couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alexander Shorin (JIRA)" <>
Subject [jira] [Updated] (COUCHDB-1855) POST/GET query is not processing arrays properly
Date Tue, 16 Jul 2013 14:58:48 GMT


Alexander Shorin updated COUCHDB-1855:

    Issue Type: Improvement  (was: Bug)
> POST/GET query is not processing arrays properly
> ------------------------------------------------
>                 Key: COUCHDB-1855
>                 URL:
>             Project: CouchDB
>          Issue Type: Improvement
>          Components: HTTP Interface
>            Reporter: Andrew Spode Miller
>            Priority: Minor
> Sending an array in POST/GET url encoded form is not working correctly.
> For example:
> ?foo[]=bar&foo[]=bar2
> OR
> ?foo[0]=bar&foo[1]=bar2
> OR 
> ?foo=bar&foo=bar2
> Should be converted to:
> foo = ["bar", "bar2"]
> Instead, the last element overwrites it. So in the above example, excluding the 2nd variety,
you would get:
> foo = "bar2"
> I can't find a W3C document to back up this behaviour - but certainly in PHP and Java,
this is normal behaviour. jQuery also converts an array into this format too, so if it's not
"standard" it's certainly expected.
> According to "rnewson" who I was chatting to on IRC - the reason this is happening is
that the URL query is being converted to a JSON object. Therefore, two items with the same
key name would overwrite each other. He also says the following:
> "yes, I think you'd want to convert "foo=bar&foo=baz" into "foo":["bar","baz"] instead
of [{"foo","bar"},{"foo","baz"}] in couch_httpd_external's to_json_terms function."
> I have put a work around in my own code, so this isn't a priority for me - but perhaps
if someone else already has the relevant bit of code open... :)

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:

View raw message