couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "gert cuykens (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (COUCHDB-1268) "?rev=" URL query parameter
Date Thu, 01 Sep 2011 11:36:10 GMT

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

gert cuykens commented on COUCHDB-1268:
---------------------------------------

Thanks, if-match works. This is by far the most logic way for me, no _id and no _rev. Pleas
consider development in this direction that _id and _rev should always be header material.
In futon both should also not be represented in the fields but in the bottom bar menu between
previous an next version for example. Id is already represented in the top menu.

curl -X PUT http://localhost:5984/_users/user%3Agert88888 -H 'If-Match: 5xxx' -H 'Content-Type:
application/json' -d '{
 "type"         : "user",
 "name"         : "gert",
 "roles"        : [],
 "password_sha" : "...",
 "salt"         : "..."
}'


> "?rev=" URL query parameter
> ---------------------------
>
>                 Key: COUCHDB-1268
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-1268
>             Project: CouchDB
>          Issue Type: Improvement
>          Components: Database Core
>    Affects Versions: 1.2
>         Environment: linux
>            Reporter: gert cuykens
>            Priority: Trivial
>              Labels: api-change
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> When PUTting a document you have to specify the current revision as a _rev key in the
JSON; whereas many related requests (like DELETE, COPY and PUT of an attachment) specify the
revision in a "?rev=" URL query parameter instead. The first example, will result into a document
conflict because rev is not specified in the JSON and the rev from the url gets ignored. All
other examples work. I strongly believe JSON bodies like this should never contain _id and
_rev and will improve in much better client code.
> curl -X PUT http://localhost:5984/_users/user%3Agert?rev=5xxx -H
> 'Content-Type: application/json' -d{
>  "_id"          : "user:gert",
>  "type"         : "user",
>  "name"         : "gert",
>  "roles"        : [],
>  "password_sha" : "",
>  "salt"         : ""
> }'
> curl -X PUT http://localhost:5984/_users/user%3Agert -H 'Content-Type:
> application/json' -d{
>  "_id"          : "user:gert",
>  "_rev":"5xxx",
>  "type"         : "user",
>  "name"         : "gert",
>  "roles"        : [],
>  "password_sha" : "",
>  "salt"         : ""
> }'
> curl -X PUT http://localhost:5984/_users/user%3Agert/picture?rev=5xxx
> -H 'Content-Type: image/png' -d @picture.png

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

        

Mime
View raw message