如何在IOS safari上禁用缓存?

Dea*_*ean 30 iphone safari ipad ios

有没有办法在ipad/iphone上禁用缓存?我想为非缓存体验运行一些自动化测试.

Col*_*len 35

我偶然发现了一种在iOS上禁用缓存的方法:

iOS版

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

桌面

  1. 打开Safari
  2. 导航到Safari>首选项>高级选项卡
  3. 启用" 开发"菜单
  4. 在" 开发"菜单中,选择" 您的iOS设备名称" > "您要调试的页面"
  5. 在禁用缓存时按Command-Shift-R重新加载
  6. 额外奖励:这是计算机上的完整Web Inspector,用于检查iOS设备上的页面

如果你想要更永久的东西,你要么必须去代理路由,要么制作一个禁用缓存的UIWebView/ WKWebViewwrapper应用程序.

  • 尽我最大的努力让 Safari 不缓存文件,它很顽固。选择开发 > 清空缓存和开发 > 禁用缓存,然后还必须使用设置 > Safari > 清除历史记录和网站数据清除设备上的缓存,并从服务器中删除文件,直到出现错误,说明文件不存在,然后将文件放回并重新加载。我想在 Safari 移动版中调试大量的 Javascript 应用程序一定是一场噩梦。我还必须使用 nginx 在服务器端禁用缓存。 (2认同)
  • 这更改为 Command + Option + R(Option 而不是 Shift) (2认同)

muz*_*amo 14

有一种方法可以有效地禁用iphone/ipad/IOS上的缓存.

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

在此输入图像描述

在IOS中,在您的wifi连接设置下设置代理,指向您正在运行fiddler的计算机的IP地址,以及端口8888(假设您没有在fiddler中将其更改为默认值):

在此输入图像描述

到目前为止,fiddler应该拦截您的设备正在进行的所有Web请求.

您现在可以从fiddler中的Rules - > Performance菜单中禁用缓存.

在此输入图像描述


Jam*_*pta 14

我可能是错的,但在iOS上确实将Safari置于私密浏览模式禁用缓存?


Ray*_*ang 3

似乎不可能。在桌面版 safari 上,开发人员工具中有一个禁用缓存的选项,但移动版 safari 上没有该选项。我在其他浏览器(如 Opera)中也没有找到该选项。

如果你想尝试,你可以覆盖桌面版 Firefox 的用户代理字符串,使其成为一个假的 ipad 移动浏览器,然后禁用缓存。但这取决于你想测试什么,它根本不起作用。

希望这可以帮助。