New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PATCH and resource versioning #41
Comments
|
I'm mobile, but the PATCH RFC should have this defined, no? On Mon, May 6, 2013 at 5:45 PM, Benjamin Black notifications@github.com
|
|
use ETag for handling update conflicts (http://www.w3.org/1999/04/Editing/). |
|
Dandy. Spec needs to include this behavior as a MUST or conflicts will produce undefined and unpredictable results. That would be surprising. Minimize surprise. |
|
+1 for requiring an If-Match header on requests where conflicts can occur. |
|
Yup. Using ETags is a Good Idea. Section 2.2 of the patch rfc ( http://tools.ietf.org/html/rfc5789 ) says Also seems good. |
|
Is there a particular reason this issue was closed? Has it been moved or otherwise solved? I just opened an issue in rails-api/active_model_serializers#532 and thought I'd probe for interest here too. |
Yes, use etags and 409 Conflict. |
|
I'm sure you (and others) have thought of this already, and decided it's outside the scope of json-api. But my thought was that one could standardize a key to use for these tags as well as the associated behavior. |
|
We can't guarantee that any particular item has any particular key, since we only even name one or two, and they're optional. And I'm not sure that we need any additional behavior other than what's in the standard already. That said, we'd entertain an actual proposal, if you want to give it some thought and make a PR. I'm not perfect. :) |
|
_etags field when multiple items are returned seems a useful thing to On Fri, Mar 28, 2014 at 12:00 PM, Steve Klabnik notifications@github.comwrote:
|
How does JSON API handle or indicate conflicts when multiple clients simultaneously attempt to modify a resource?
The text was updated successfully, but these errors were encountered: