-
Notifications
You must be signed in to change notification settings - Fork 2
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
More rigorous definition of request references #1917
Conversation
Homework: cross-check our resolution rules against https://www.rfc-editor.org/rfc/rfc3986#section-5, especially for multi-part responses. |
Here's my argumentation: "5.1.2. Base URI from the Encapsulating Entity" takes precedence over "5.1.3. Base URI from the Retrieval URI". In the case of an individual response within a $batch response the encapsulating entity is the $batch response, but this has no base URL for lack of a We should state in [OData-Protocol, section 11.7] that the "URI used to retrieve the representation" of an individual response within a $batch response is the corresponding individual request URL, in both multipart and JSON $batch. I found a problem: Section 11.7.7.1 states
But path and |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1, one minor nit
What about this problem? |
The scheme is not necessary inside the batch request because the HTTP message to be routed over the network is the whole batch request, and its scheme has already been used to establish a secured or unsecured connection. |
We need an absolute request URL which must serve as the base URI of a relative |
Don't we have that by taking the batch request's scheme, the |
If we take the scheme from request, why not the host as well? Why do we need the |
Because that's HTTP/1.1 message format, and it is valid to just wrap those into a multipart body. We can of course debate whether the Host header has any meaning here, or ask how existing implementations use this second form. The third form with relative paths in the request line needs to be resolved against the batch URL anyway, which essentially means prefixing with the service root URL. |
No description provided.