[ 
https://issues.apache.org/jira/browse/COUCHDB-1175?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13062345#comment-13062345
 ] 

Marcello Nuccio commented on COUCHDB-1175:
------------------------------------------

@Randall, this is almost exactly what I am trying to say.
The only problem is: what to put in the 401 response?

Right now, in CouchDB-1.1, if I do GET for an attachment with content-type 
'text/html', the response could have content-type 'application/json'. This 
breaks the Couchapps hosted on password protected DB, because there's no easy 
way for the browser to get an HTML login page, when authentication is required.

My solution is: if the client is requesting a 'text/html', give him a 
'text/html', even if the Accept header says that 'application/json' has higher 
priority.

This does make sense, because it is exactly what I do if authentication is not 
needed.

> Improve content type negotiation for couchdb JSON responses
> -----------------------------------------------------------
>
>                 Key: COUCHDB-1175
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-1175
>             Project: CouchDB
>          Issue Type: Improvement
>    Affects Versions: 1.0.2
>            Reporter: Robert Newson
>            Assignee: Robert Newson
>            Priority: Blocker
>             Fix For: 1.1.1, 1.2
>
>
> Currently we ignore qvalues when negotiation between 'application/json' and 
> 'text/plain' when returning JSON responses.
> Specifically, we test directly for 'application/json' or 'text/plain' in the 
> Accept header. Different branches have different bugs, though. Trunk returns 
> 'application/json' if 'application/json' is present at all, even if it's less 
> preferred than 'text/plain' when qvalues are accounted for.
> We should follow the standard.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to