首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Pocket IE:似乎还在缓存?

Pocket IE:似乎还在缓存?
EN

Stack Overflow用户
提问于 2009-07-30 16:08:20
回答 2查看 283关注 0票数 2

我在Windows Mobile5.0下运行的特定版本的Pocket IE遇到了问题。不幸的是,我不确定确切的版本号。

我们遇到了一个问题,当无线网络关闭时,这种特殊的“安装”会返回一个本地缓存的页面版本。很公平,没问题。我们清除了手持设备的缓存,并开始发送以下标头:

代码语言:javascript
复制
Expires: Mon, 26 Jul 1997 05:00:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Last-Modified: Thu, 30 Jul 2009 16:42:08 GMT

Last-Modified标头是动态计算的,并设置为“now”。

尽管如此,手持设备似乎正在缓存这些页面:页面与标题一起发送,但当它们断开无线网络并单击指向该页面的链接(这不应该被缓存)时,它仍然会返回这个缓存的文件。

有没有其他的头需要发送,或者这只是Pocket IE的一个问题?或者它可能是完全不同的东西?

谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-07-30 16:33:55

我不确定我能不能回答你的问题,因为我没有Pocket IE可以测试,但也许我可以提供一些帮助。

这是一个非常好的缓存参考:http://www.mnot.net/cache_docs/

此外,我不确定您的示例是header的粘贴结果,还是您为发送header而设置的代码,但我认为大多数语言实现(通过扩展,我假设大多数浏览器实现)中的header集合都被视为一个映射;因此,您可能已经用第二个"Cache-Control“头部覆盖了"no-store,no-cache,必须重新验证”。换句话说,只能发送一个,如果最后一个成功,您只发送"post-check=0,pre-check=0“。

您还可以尝试添加max-age=0标头。

根据我的经验,Firefox和IE似乎都对HTTPS提供的页面更加敏感。如果你有选择的话,你可以试一试。

如果你仍然没有运气,而且Pocket IE的表现与Windows IE明显不同,那么我猜测手持设备有特殊的缓存规则,这是基于它将经常远离互联网连接的假设。

编辑:在你提到CNN.com之后,我意识到你在缓存控制中没有“”头。我认为这就是CNN.com缓存页面而不是你的页面的原因。我相信"private“是"Cache-Control header”中最严格的设置,试着加上它。

例如,以下是CNN的标题。(我不认为两次列出“私有”有任何影响)

代码语言:javascript
复制
Date: Fri, 31 Jul 2009 16:05:42 GMT
Server: Apache
Accept-Ranges: bytes
Cache-Control: max-age=60, private, private
Expires: Fri, 31 Jul 2009 16:06:41 GMT
Content-Type: text/html
Vary: User-Agent,Accept-Encoding
Content-Encoding: gzip
Content-Length: 21221

200 OK

如果你没有Firefox Web Developer Toolbar,它是一个很好的工具来检查任何网站的响应头-在“信息”下拉列表中,“查看响应头”在底部。

票数 1
EN

Stack Overflow用户

发布于 2009-08-03 12:11:31

尽管Renesis一直在努力帮助我,但我不得不放弃。

我说的“放弃”是指我作弊了。我没有尝试在客户端解决这个问题,而是采用了服务器端的方法。

我最终做的是用PHP编写一个函数,该函数将接受一个URL,并使其本质上是唯一的。它通过基于对uniqid()的调用添加一个随机的GET参数来实现这一点。然后我对它做了一些其他的小事情:确保我添加了一个'?‘根据是否存在其他GET参数,将“&”或“&”添加到URL,并确保将任何“#”锚定项直接推送到末尾,然后将该URL返回给浏览器。

这基本上解决了问题,因为浏览器看到的每个链接都是唯一的:它以前从未见过那个特定的URL,因此无法从缓存中检索它。

像黑客一样?是。工作吗?到现在为止还好。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1207626

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档