You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Allowing collaboration on a scene would require some new features.
In short the process would be :
Compare the PUT request with the document it was referenced against to compute a list of changes
Apply this list of changes onto the document's latest revision if possible
fine-tune 2. conflicts resolution using field testing
The main building block missing here is the ability to compare a change against its reference. It could be done client-side by saving the Etag header to send it back as If-Match on save. It's a slightly unorthodox use of the If-Match header.
Another option is to send a Set-Cookie header on GET that references the current version, then get the cookie's value on PUT. That's slightly invasive, in particular if we do it on every scene requests. It might be acceptable because it's session cookies so it at least won't cause too much privacy concerns.
A third option would be to embed a unique ID into the document. It would be sent as-is to the client and then be parsed back on PUT, hinting at the reference's version. There would be practically no additional overhead because we have to parse the document on save anyways if we want to compute a diff so it's no big deal inserting a nonce into it before serialization.
the second and third options would require little to no client code change.
The text was updated successfully, but these errors were encountered:
Allowing collaboration on a scene would require some new features.
In short the process would be :
The main building block missing here is the ability to compare a change against its reference. It could be done client-side by saving the Etag header to send it back as If-Match on save. It's a slightly unorthodox use of the If-Match header.
Another option is to send a Set-Cookie header on GET that references the current version, then get the cookie's value on PUT. That's slightly invasive, in particular if we do it on every scene requests. It might be acceptable because it's session cookies so it at least won't cause too much privacy concerns.
A third option would be to embed a unique ID into the document. It would be sent as-is to the client and then be parsed back on PUT, hinting at the reference's version. There would be practically no additional overhead because we have to parse the document on save anyways if we want to compute a diff so it's no big deal inserting a nonce into it before serialization.
the second and third options would require little to no client code change.
The text was updated successfully, but these errors were encountered: