[
https://issues.apache.org/jira/browse/COUCHDB-257?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Joan Touzet updated COUCHDB-257:
--------------------------------
Skill Level: (was: Regular Contributors Level (Easy to Medium))
Labels: wontfix (was: )
Saw this one scroll by on IRC and decided it's time to change the title, as the
old one scared me every time I saw it.
There's nothing we can do to fix IE's broken behaviour here without making
important, *incorrect* semantic changes for programmatic access to CouchDB.
Those changes would break appropriate decisions being made by non-brain-dead
client implementations.
You can't please all of the people all of the time - and as an occasional
Windows user myself, all of you IE people have my deepest symapthy for the
trouble this causes you. Might I suggest Firefox or Chrome if you need to use
your browser to directly talk to CouchDB?
> HTTP caching headers make Internet Explorer experience poor
> -----------------------------------------------------------
>
> Key: COUCHDB-257
> URL: https://issues.apache.org/jira/browse/COUCHDB-257
> Project: CouchDB
> Issue Type: Bug
> Components: HTTP Interface
> Affects Versions: 0.8.1, 0.9
> Environment: Server: Ubuntu Hardy on x86. Client: Windows XP (32-bit).
> Reporter: Vinay Sajip
> Priority: Minor
> Labels: wontfix
> Attachments: caching-header-patch.diff, expires.patch
>
>
> The HTTP caching headers currently put out cause IE (for example) to not
> display information correctly in Futon. It's easy to reproduce: I open
> windows in Firefox and IE simultaneously, do an update using Firefox (e.g.
> add a new document) and refresh the IE window. The updated document count is
> not shown. If I clear the browser cache and try again, the updated
> information is displayed. The HTTP header put out is
> Cache-Control: must-revalidate
> which seems to me insufficient - for IE, at least. Is there way of
> configuring these headers, to for example
> Cache-Control: no-cache
> Pragma: no-cache
> Expires: some date in the past, or the same value as the Date: header
> Christopher Lenz has said about this that "This is due to extra-aggressive
> (and against the HTTP spec) caching that IE does on XMLHTTPRequests. A
> patch would need to do user agent sniffing to conditionally add the "cache:
> false" parameter to the jQuery ajax() invocations in jquery.couch.js (and
> maybe elsewhere). I wouldn't want to add this for all user agents, as it
> basically circumvents any caching for AJAX requests (even for
> not-craptastically-broken implementations), and thus would add quite a bit
> of unnecessary overhead."
> To this, I would comment that I don't believe a patch to the client-side code
> in Futon would be sufficient. There are other clients out there, some of
> which will be on Windows and so by default use the (acknowledgely broken)
> Microsoft stack. In my view it is more important to err on the side of
> correctness than performance - so I believe the headers generated server-side
> need to change, as well as perhaps Futon client-side changes.
> I note that handle_uuids_req in couch_httpd_misc_handlers.erl uses the
> no-cache/Expires scheme I mention.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)