Uploaded image for project: 'OASIS OSLC Lifecycle Integration Core (OSLC Core) TC'
  1. OASIS OSLC Lifecycle Integration Core (OSLC Core) TC
  2. OSLCCORE-184

oslc:postBody does not indicate it should be used only for OSLC paging

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Component/s: Core, Query
    • Labels:
      None
    • Proposal:
      Hide

      Add text to indicate that the postBody is to be used only for OSLC 2.0 paging where the server returns a 302 or 307 result:

      Where a paged resource supports POST with an application/x-www-form-urlencoded body as an alternative to GET to avoid the request URI exceeding server limitations*, and the server uses OSLC 2.0 paging with a 302 or 307 redirect,* the oslc:ResponseInfo in the response to the POST SHOULD contain this property so that a client knows what to POST to get the next page."

      Optionally, add a note about LDP paging:

      Note that LDP paging uses 303 redirection, where the paged response is available through a GET request without repeating the POST body of the original request.

      Show
      Add text to indicate that the postBody is to be used only for OSLC 2.0 paging where the server returns a 302 or 307 result: Where a paged resource supports POST with an application/x-www-form-urlencoded body as an alternative to GET to avoid the request URI exceeding server limitations*, and the server uses OSLC 2.0 paging with a 302 or 307 redirect,* the oslc:ResponseInfo in the response to the POST SHOULD contain this property so that a client knows what to POST to get the next page." Optionally, add a note about LDP paging: Note that LDP paging uses 303 redirection, where the paged response is available through a GET request without repeating the POST body of the original request .

      Description

      oslc:postBody, in its shape and vocabulary entries, says that this property defines the body of a POST request to return the next page if the response was to a POST request, going on:

      "Where a paged resource supports POST with an application/x-www-form-urlencoded body as an alternative to GET to avoid the request URI exceeding server limitations, the oslc:ResponseInfo in the response to the POST SHOULD contain this property so that a client knows what to POST to get the next page."

      This may be applicable to OSLC 2.0 paging, but it is incompatible with LDP paging. LDP paging uses 303 redirects, which should be followed using a GET request. The http spec states:
      The 303 (See Other) status code indicates that the server is
      redirecting the user agent to a different resource, as indicated by a
      URI in the Location header field, which is intended to provide an
      indirect response to the original request. A user agent can perform
      a retrieval request targeting that URI (a GET or HEAD request if
      using HTTP), which might also be redirected, and present the eventual
      result as an answer to the original request. Note that the new URI
      in the Location header field is not considered equivalent to the
      effective request URI.

      This status code is applicable to any HTTP method. It is primarily
      used to allow the output of a POST action to redirect the user agent
      to a selected resource, since doing so provides the information
      corresponding to the POST response in a form that can be separately
      identified, bookmarked, and cached, independent of the original
      request.

        Attachments

          Activity

            People

            • Assignee:
              jamsden James Amsden
              Reporter:
              ndjc Nick Crossley
            • Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated: