我正在将 CouchDB 用于 Web 应用程序,并且在 IE8 缓存视图结果时遇到问题。从我的阅读看来,一种解决方案是将“Cache-Control”HTTP 标头更改为“no-cache”。现在 CouchDB 返回值“必须重新验证”。
有没有办法改变这个标题的值?可以只为视图更改吗?
我正在将 CouchDB 用于 Web 应用程序,并且在 IE8 缓存视图结果时遇到问题。从我的阅读看来,一种解决方案是将“Cache-Control”HTTP 标头更改为“no-cache”。现在 CouchDB 返回值“必须重新验证”。
有没有办法改变这个标题的值?可以只为视图更改吗?
仅供参考,如果您使用 jQuery,请记住在 $.ajax() 调用中包含 cache:false 作为您的选项之一。
CouchDB 应该使用在视图内容或代码更改时更改的 Etag。但是,查看 CouchDB 的错误数据库,似乎Internet Explorer 存在缓存问题,该问题已经有一段时间没有解决了。如果这看起来像您遇到的问题,那么在错误票中提出修复建议或至少提醒 CouchDB 邮件列表/IRC 问题可能会有所帮助。
看起来问题只是 IE 的错误,因此可能需要某种解决方法,例如在您知道否则会遇到缓存问题时使用古老的额外随机参数 hack 查询视图以使 URL 唯一。