如何禁用IOS Safari的caching?

有没有办法在iPad / iPhone上禁用caching? 我想运行一些非caching体验的自动化testing。

我只是偶然发现了一种在iOS上的Safari中禁用caching的方法:

iOS版

  1. 打开设置
  2. 导航到Safari>高级
  3. 启用Web Inspector
  4. 切换回Safari并加载网页

桌面

  1. 打开Safari
  2. 导航到Safari>首选项>高级选项卡
  3. 启用“ 显影”菜单
  4. 在“ 显影”菜单中,select您的iOS设备名称 > 您要debugging的页面
  5. 按下Command-Shift-R重新加载,同时禁用caching
  6. 奖金:这是您的计算机上的一个完整的Web Inspector检查您的iOS设备上的页面

如果你想要一些更持久的东西,你要么去代理路由,要么创build一个禁用caching的UIWebView / WKWebView包装应用程序。

有一种方法可以有效地禁用iphone / ipad / IOS上的caching。

在Windows桌面上安装Fiddler,并允许远程计算机连接:

在这里输入图像说明

在IOS中,在你的wifi连接设置下设置一个代理,指向正在运行的提琴手所在的计算机的IP地址,并在端口8888上(假设你没有在默认的提琴手中改变它):

在这里输入图像说明

到目前为止,提琴手应该拦截您的设备正在制作的所有networking请求。

您现在可以在小提琴手的“规则” – >“演奏”菜单中禁用caching。

在这里输入图像说明

我可能是错的,但在iOS上确实将Safari浏览器设置为隐藏浏览模式禁用caching?

似乎不可能。 在桌面Safari上,有一个选项可以在开发人员工具中禁用caching,但在移动Safari上没有。 我没有在其他浏览器,如歌剧既没有find选项。

如果你想尝试,你可以覆盖桌面的Firefox的用户代理string,并使其成为一个假的iPad移动浏览器,然后禁用caching。 但是这将取决于你想testing什么,它根本无法工作。

希望这可以帮助。

使用iOS Simulator 9.0我已经发现Developer-Disable Caches菜单项和Cmd-Shift-R重新加载都无法完全绕过caching。 唯一有效的工作是按住shift并在Safari Developer工具中按下这个重新加载button:

在这里输入图像说明