- From: Jim Luther <luther.j@apple.com>
- Date: Thu, 31 Jan 2002 18:13:20 -0800
- To: http-wg@cuckoo.hpl.hp.com
Hi, Mac OS X has a file system which uses HTTP and the WebDAV extensions. Today, when an file entity on a DAV server is opened with write access, our file system GETs the entire entity from the server and then works with the local copy. When that entity is closed or synced, the local copy is PUT back to the server. I'd like to change our code so that individual write requests to the server entity are write-through to the server, but to do that, I need to be able to do a ranged PUT with the range possibly starting and ending beyond the entity's current instance-length (the current length of the entity on the server). In addition, to be able to handle seek and truncate requests, I need to be able to change the instance-length without changing any data to both to make the entity either larger or smaller. RFC 2616 doesn't really say how a Content-Range header might be used to specify a ranged PUT request (it only discusses how a server would use it to reply to a ranged GET), and nowhere that I can find does the RFC say how the length of an entity can be changed (although I was thinking that maybe the byte-content-range-spec in a Content-Range header could look something like "bytes */100" to set the length of an entity to 100 without changing any data). So, my two questions: 1 - Are ranged PUTs possible and if so, what should the headers look like? 2 - Can the length of an entity be changed and if so, what should the headers look like? Thanks, Jim Luther Apple Computer
Received on Friday, 1 February 2002 02:15:45 UTC