- From: Julian Reschke <julian.reschke@gmx.de>
- Date: Sun, 05 Oct 2008 20:11:56 +0200
- To: WebDAV <w3c-dist-auth@w3.org>
Julian Reschke wrote: > > Hi, > > while implementing WebDAV BIND in Jackrabbit [1] (the Apache Java > Content Repository Reference Implementation), my colleague Manfred > Baedke noticed that the spec currently micro-manages HTTP status codes: > for instance, for a successful BIND it requires status codes of 200 or > 201, while - from an HTTP point of view - a 204 should be acceptable as > well. > > Proposal: rephrase the text so that other success codes are acceptable > as well, or remove the normative language completely, point to RFC2616, > and rely on examples. > > BR, Julian > > [1] <https://issues.apache.org/jira/browse/JCR-1733> Proposed resolution, deliberately kept simple in order not to make bigger changes at this stage: Section 4., paragraph 9: OLD: If the request succeeds, the server MUST return 201 (Created) when a new binding was created and 200 (OK) when an existing binding was replaced. NEW: If the request succeeds, the server MUST return 201 (Created) when a new binding was created and 200 (OK) or 204 (No Content) when an existing binding was replaced. Section 5., paragraph 6: OLD: <!ELEMENT unbind (segment)> If the request succeeds, the server MUST return 200 (OK) when the binding was successfully deleted. NEW: <!ELEMENT unbind (segment)> If the request succeeds, the server MUST return 200 (OK) or 204 (No Content) when the binding was successfully deleted. Section 6., paragraph 7: OLD: If the request succeeds, the server MUST return 201 (Created) when a new binding was created and 200 (OK) when an existing binding was replaced. NEW: If the request succeeds, the server MUST return 201 (Created) when a new binding was created and 200 (OK) or 204 (No Content) when an existing binding was replaced. See also <http://greenbytes.de/tech/webdav/draft-ietf-webdav-bind-latest.html#rfc.issue.status-codes>. Note that I also added a Location header to the one example where a 201 status is returned; this may be a good idea as the newly created URI != the request-URL (but I wouldn't want to normatively require it). BR, Julian
Received on Sunday, 5 October 2008 18:12:44 UTC