[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: HTTP, WebDAV, and POST
On Mon, Jun 07, 2004 at 09:50:46AM -0700, Lisa Dusseault wrote:
> On Jun 6, 2004, at 1:09 PM, John Panzer wrote:
> >Ken MacLeod wrote:
> >>...
> >>
> >>* Although WebDAV does not use POST, there does not seem to be any
> >> conflict in Atom specifying POST for creating server-located
> >> resources and at some point using WebDAV actions on the resources
> >> after they've been created.
[ and the part about PUT ]
+1
>...
> Microsoft's Exchange 2000 WebDAV engine combines these two in pretty
> much the way you describe. When the user is creating a new item in a
> WebDAV-compliant collection and doesn't care what the URL is, as long
> as it's unique, it uses POST with a request-URI of the target parent
> collection. The server generates a unique URI inside the WebDAV
> collection. If the client wishes to choose the URL for a new resource,
> or if the client wishes to overwrite an existing resource, the client
> uses PUT instead.
Right.
Subversion needs to create unique (DeltaV) activity resources on the
server. It doesn't use POST, though. Instead, it generates a UUID and
forms a URL from that. That has worked really well for SVN.
Atom doesn't get to use that option, though, as it can be desirable to
have a resource name that somewhat corresponds to the content. For
example, most blog post URLs have generated named from the first N words
of the post. That is very nice for users, and (in the future) when
somebody is browsing a WebDAV-capable store of blog posts, it will be MUCH
nicer to have somewhat-recognizable resource names instead of UUIDs.
> This POST usage isn't canonicalized as part of the standard
> capabilities of a standard WebDAV collection, but it's a simple
> extension and one could easily imagine standardizing it.
While true, I'd prefer a new HTTP method. The problem comes up all over
the place (e.g. the activity creation mentioned above). Maybe a method
called NEWRESOURCE or somesuch. Throw it at a collection.
[ and I'll note that the Atom effort could very well be the WG to define
this new method! ]
Cheers,
-g