为什么我的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将电话插入计算机并使用开发工具轻松清除缓存:

  1. 在手机中,启用开发工具:设置/ Safari /高级
  2. 在计算机中,启用Safari开发菜单:设置/高级
  3. 确保移动版Safari已打开并检查手机:开发/ PHONE_NAME / TAB_NAME
  4. 现在按cmd-shift-r清除手机中的缓存

尝试停止safari并重新启动它并删除safari中的所有页面….请参阅图像如何关闭页面 在此处输入图像描述

你在处理HTML5“离线”应用程序吗? 对脱机应用程序使用清单文件是相当新的,并且每个浏览器都有奇怪的怪癖。 修改服务器上的清单文件,iPhone应该再次获取页面。

编辑 :如果您有一个清单文件(以及指向它的HTML属性),如果您以错误的顺序删除清单,您的缓存可能会纠结:

  1. 存在HTML和清单
  2. 删除清单文件,并重新加载HTML页面=> HTML页面应该取消显示,因为清单404,但在某些浏览器上它没有。
  3. 修改HTML => HTML页面不会取消缓存,因为(不存在的)清单文件没有更改。

要正确取消它,请尝试:

  1. 重新添加HTML和清单
  2. 首先删除HTML清单属性,然后重新加载页面
  3. 然后从服务器中删除清单文件。

还有另一个解决方案,重新启动你的设备进行safari,

  1. 转到Settings
  2. 然后下去去Safari
  3. 然后向下看看选项Clear Cookie and Data ,如下图所示 iPhone Safari清除Cookie和数据

  4. 现在回到你的safari,你就完成了!

如果您在下面有任何问题评论。

对我有用的是在Google上搜索我的网站并点击Google搜索结果。