-
Notifications
You must be signed in to change notification settings - Fork 16
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
Subscriptions with no immediate response #105
Comments
The use-case that comes to mind for me is the one in #110 where you want to subscribe to a resource before it exists. Here's an example:
So we should probably add a mechanism for expressing "resource does not exist 404" as an update over a subscription, and then modify your proposed language to:
I'm confused, though, why we would require a "full snapshot update". It seems that it would also be ok to provide a patch update, especially if the client specified
|
However, I'm not sure that we should be prescribing at the protocol level how a server should behave to provide a particular UX at the application level. If an app has a bad UX, it will become pretty obvious, and the programmers will know to fix things. I don't see why we need to prescribe that behavior in the protocol spec. The protocol could also be used at a system-level, from server to server. Maybe a developer wants to build a system that can tolerate really slow responses from machine to machine. If we say that he SHOULD not do that, he might get worried, and feel the need to build more complexity into his system than is necessary. |
We had an issue come up today around subscriptions where the server:
Eg, the subscription response looks like this:
(And no subsequent data is sent indefinitely.)
The problem is that the client has no idea what to display to the user - they have no idea what the document looks like until the server sends an update. This would result in bad UX (loading spinner forever), and I consider it an antipattern. I think the spec should recommend against this.
I think either:
parents:
header) and the server responds by bringing the client up to date, and uses thecurrent-versions:
header to name the most recent version.I propose we add wording like this in the spec:
@toomim said there are some other valid use cases for servers doing this. What are the other use cases I'm missing?
The text was updated successfully, but these errors were encountered: