On Jul 1, 2011, at 2:51 PM, Randall Leeds wrote:

> The reasoning was that this response makes Futon much more friendly
> rather than relying on the browser's login dialogues.
> With "Accept: application/json" I think CouchDB does respond with a 401.

Yeah, I’ve seen this kind of tension before, between APIs that want to use HTTP 
auth vs UIs that want to use cookie-based login. In some APIs you have to 
append a query string (like ?auth=digest”) to get HTTP auth; but that would be 
way too awkward to use in Couch.

The Accept: header seems like a pretty roundabout way to tell the server which 
behavior you want! I would never have guessed that. Why not use the auth 
headers? If the client went to the trouble of explicitly sending HTTP auth 
headers, the server should probably assume it meant to use auth, and return a 
401.

> Since JSON is the only official interface to CouchDB it's debatable
> that CouchDB should be doing anything other than a 400 for this
> request ;).

You mean 401, not 400, right? The request isn’t invalid, just unauthorized.

—Jens

Reply via email to