为什么我的Mobile Safari缓存无法清除?
我正在尝试在iPhone4(iOS4)iPad1(iOS3.3)和桌面上调试网站。
我的问题是我无法清除iPhone缓存。
如果我将警报/控制台添加到我正在调试的js文件中,它们会显示在iPad和桌面上,但iPhone只是从缓存中重新加载。
如果我通过settings>safari>delete browser history, cache, cookies
清除缓存settings>safari>delete browser history, cache, cookies
并在Safari中删除所有书签并删除服务器上的文件,iPad和桌面中断(丢失的文件),但iPhone仍然加载页面,好像什么也没发生。
不确定这是正确的地方,但也许其他人有类似的经验和想法如何解决?
谢谢!
编辑 :
我多玩了一些。 如果我通过图标启动应用程序,缓存似乎已清除。 只有当我在Mobile Safari中打开页面时,它仍然使用缓存中的错误文件。 指针仍然欢迎!
编辑 :
我正在开始对此表示赏心悦目。 我在网站上使用RequireJS和JqueryMobile,因此这些也可能是缓存未清除的原因。 尽管如此,我还是不明白为什么它会在app-mode中清除,为什么它在Mobile Safari中无法清除。
我尝试过以下方法:
1.单击URL栏中的reload page
不会清除缓存。 单击链接然后通过go
加载页面似乎偶尔会清除缓存
即使这有点hacky,也许有一个解决方法(我假设这是为了开发)
根据禁用ajax缓存的注意事项如何禁用Safari浏览器中的Ajax缓存? 您可以在开发时设置no-cache标头,或者像这样在纯HTML中设置
显然它不会解决你最初被卡住的问题。 但您可以通过添加任意查询参数来解决周期?某事= 3164因此URL实际上是唯一的。 然后下次加载它有希望它将保持无缓存参数。
如果即使那样不起作用,你可以设置一个书签,每次将你重定向到一个不同的random = 14361号码,它们都是有效的独特呼叫 – 但是后来我们进入了愚蠢的领域!
我想有一个合适的解决方案,但是当我开发JS webapps时,我发现有时候所有东西都会正常刷新一段时间,然后有时候它并没有…我能说出的真实模式 – 除了我认为的事实启用调试器时似乎做得少(但那完全没有事实;-)
在为iOS移动设备开发时,您可以通过USB将电话插入计算机并使用开发工具轻松清除缓存:
- 在手机中,启用开发工具:设置/ Safari /高级
- 在计算机中,启用Safari开发菜单:设置/高级
- 确保移动版Safari已打开并检查手机:开发/ PHONE_NAME / TAB_NAME
- 现在按cmd-shift-r清除手机中的缓存
尝试停止safari并重新启动它并删除safari中的所有页面….请参阅图像如何关闭页面
你在处理HTML5“离线”应用程序吗? 对脱机应用程序使用清单文件是相当新的,并且每个浏览器都有奇怪的怪癖。 修改服务器上的清单文件,iPhone应该再次获取页面。
编辑 :如果您有一个清单文件(以及指向它的HTML属性),如果您以错误的顺序删除清单,您的缓存可能会纠结:
- 存在HTML和清单
- 删除清单文件,并重新加载HTML页面=> HTML页面应该取消显示,因为清单404,但在某些浏览器上它没有。
- 修改HTML => HTML页面不会取消缓存,因为(不存在的)清单文件没有更改。
要正确取消它,请尝试:
- 重新添加HTML和清单
- 首先删除HTML清单属性,然后重新加载页面
- 然后从服务器中删除清单文件。
还有另一个解决方案,重新启动你的设备进行safari,
- 转到
Settings
- 然后下去去
Safari
-
然后向下看看选项
Clear Cookie and Data
,如下图所示 -
现在回到你的safari,你就完成了!
如果您在下面有任何问题评论。
对我有用的是在Google上搜索我的网站并点击Google搜索结果。