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