chemistry-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Florian Müller (JIRA) <j...@apache.org>
Subject [jira] [Commented] (CMIS-670) Query parameters kill browser cache
Date Wed, 12 Jun 2013 11:18:20 GMT

    [ https://issues.apache.org/jira/browse/CMIS-670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13681125#comment-13681125
] 

Florian Müller commented on CMIS-670:
-------------------------------------

I don't see an issue here.
- The current behavior is not incompatible with the spec. It only constructs URLs that shouldn't
be cached by clients. That's absolutely valid.
- The CMIS spec does not talk about caching. It doesn't define if a content stream should
be cacheable or not. In fact, some repositories intentionally try to prevent caching on the
client side. Different use cases have different caching requirements. There isn't one right
way.
- The OpenCMIS server provides means to set an expiration time (-> "...unless the server
provides an explicit expiration time"). So, there is a workaround.
- The Browser binding has been designed to be accessed by web browsers. The AtomPub binding
has not.

I guess the improvement you are looking for is to change 
http://server/content?id=1234-1234-1234-1234 to something like http://server/content/1234-1234-1234-1234
.


                
> Query parameters kill browser cache
> -----------------------------------
>
>                 Key: CMIS-670
>                 URL: https://issues.apache.org/jira/browse/CMIS-670
>             Project: Chemistry
>          Issue Type: Improvement
>          Components: opencmis-server
>    Affects Versions: OpenCMIS 0.9.0
>            Reporter: Carlo Sciolla
>            Priority: Critical
>
> From the [w2c spec|http://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html#sec13.9]:
> {quote}
> We note one exception to this rule: since some applications have traditionally used GETs
and HEADs with query URLs (those containing a "?" in the rel_path part) to perform operations
with significant side effects, caches MUST NOT treat responses to such URIs as fresh unless
the server provides an explicit expiration time. This specifically means that responses from
HTTP/1.0 servers for such URIs SHOULD NOT be taken from a cache. See section 9.1.1 for related
information.
> {quote}
> Currently, the getContentStream call in the REST binding requires URLs to be in the form:
> http://server/content?id=1234-1234-1234-1234
> which is incompatible with the spec (e.g. Firefox won't cache such URLs)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message