WebDav is a great ubiquitous protocol for file transfer. It’s been around a long time and is well supported. If you want to know more about WebDav please check out our white paper on the WebDav protocol.
Unfortunately WebDav for Mac OSX is not implemented well and is the reason we block the use of our own CloudDav WebDav protocol adaptor, that spans all mapped Clouds, and promote the use of the Cloud Drive within our Mac OS X App.
Lets look at why Mac OS X is not fit for purpose for use with the WebDav protocol:
The biggest issues is that Finder will request the following properties for all files and directories on initial connection:
In addition Finder attempts to get quota information with a separate request which requires:
As part of this interrogation Finder will write out a lot of files (such as .DS_Store files) which as well as polluting remote directories, is again slow to complete.
– Processes every getlastmodified as UTC.
– The Content-Length header is required by Finder to worked effectively.
– Finder requires locking support to allow a user to make modifications otherwise it works in read only mode.
– In PUT request bodies Funder uses Transfer-Encoding: Chunked. Unfortunately this is not used by most web servers (Apache + mod_php is the only combination that seems to work reasonably well).
– If softlinks are created or copied Finder will return an error.
Due to the issues laid out Finder can generate a huge amount of of HTTP requests, especially for large directly structures, which results in it not only being slow but ultimately not being usable and therefore fit for the purpose of working with WebDav enabled remote file structures directly within Finder.