- From: Julian Reschke <julian.reschke@gmx.de>
- Date: Thu, 24 Jan 2013 21:54:11 +0100
- To: Phillip Hallam-Baker <hallam@gmail.com>
- CC: Nico Williams <nico@cryptonector.com>, Grahame Grieve <grahame@healthintersections.com.au>, Tim Bray <tbray@textuality.com>, "ietf-http-wg@w3.org Group" <ietf-http-wg@w3.org>
On 2013-01-24 21:34, Phillip Hallam-Baker wrote: > > > On Thu, Jan 24, 2013 at 12:48 PM, Nico Williams <nico@cryptonector.com > <mailto:nico@cryptonector.com>> wrote: > > On Thu, Jan 24, 2013 at 9:30 AM, Julian Reschke > <julian.reschke@gmx.de <mailto:julian.reschke@gmx.de>> wrote: > > On 2013-01-24 04:18, Grahame Grieve wrote: > >> What would be right http status code to use? It's a client > error, right? > >> The nearest appropriate status code would be 422, but I'm not sure > >> whether that can be used outside webdav. Either way, there's a bunch > > > > It can. > > > > [...] > > > > Augmenting error handling for web services is an interesting > topic. See > > prior proposals about Link relations, or a JSON typed response > body format > > for 4xx/5xx. > > I've seen APIs that handle errors in JSON-encoded response bodies, > including one that always returns success in HTTP but errors in the > response body, which is kinda weird, but if none of the HTTP status > codes make sense... (that was the author's defense). > > > It makes perfect sense from a layering perspective. > > In an RPC call I probably want HTTP errors to be strictly limited to > reporting network failures. 'entry not found' is a completely different > result from 'machine is down' > > entry not found is arguably a successful transaction that returned an > empty list of results. In that case you are (ab)using HTTP as transport protocol. Best regards, Julian
Received on Thursday, 24 January 2013 20:54:46 UTC