32

如何在Android 的 chrome上禁用缓存?

我更改了页面内容,并刷新了页面,但内容仍然很旧。

我已经像下面这样设置了 nginx 配置,但它没有效果。

#disable cache
add_header Cache-Control "no-cache, no-store, must-revalidate";
add_header Pragma no-cache;
add_header Expires 0;

有没有办法让我的最新页面无需一次又一次地手动清除缓存?

4

6 回答 6

21

这可能不是最简单的方法,但它会 100% 工作,并且无论如何都应该成为您开发设置的一部分。

在 Windows 或 Mac 上使用 Google Chrome 网络工具将允许您进行“远程调试”。

  1. 通过设置中的开发者菜单在 Android 设备上启用远程调试。
  2. 使用 USB 将手机连接到 PC
  3. 打开 Google Chrome 并访问开发者控制台 (F12)
  4. 单击三个点(右上角)> 更多工具> 远程设备。
  5. 向下滚动以选择您的移动设备,在此阶段您应该会看到所有 chrome 实例在您的手机上打开。通过按选择您希望“强制重新加载并禁用缓存”的实例Inspect
  6. 应该会出现另一个屏幕,允许您访问网络选项卡并选择“禁用缓存”
于 2017-04-17T18:53:40.813 回答
9

目前没有办法在 Android 的 chrome 上禁用缓存,但可以清除缓存。

更新:截至目前,有一种方法可以禁用缓存,需要连接手机并需要远程调试,请参阅 Dean Meehan 的回答了解更多信息
按照以下步骤清除缓存。

http://www.refreshyourcache.com/en/chrome-android/

  1. 单击菜单按钮(右上角的三个点)。
  2. 单击菜单中的设置。
  3. 单击菜单中的隐私
  4. 单击底部的清除浏览数据...。
  5. 从列表中选择清空缓存。
  6. 确认清除浏览数据。
于 2015-03-16T19:01:22.087 回答
8

我知道这个问题是关于在 Android 的 chrome 上禁用缓存,但这可能有助于人们寻找移动开发的解决方案。

要使用您的 Android 设备查看您网站上的更改,请使用 chrome 网络菜单中的新隐身标签

  1. 点击chrome浏览器右上角的下拉菜单
  2. 点击“新的隐身标签”
  3. 导航到您的网站并查看您最近的所有更改。

重要提示:要在以隐身模式查看后查看新更改,您必须完全关闭隐身模式并重新打开,因为当前选项卡也会缓存。

于 2017-12-01T01:42:11.540 回答
2

要首先禁用缓存,您必须禁用正在编辑的脚本/css 缓存。

为此,请在文件包含中添加时间戳:

<link rel='stylesheet' href='/static/css/main.css?t={{ts}}'/>
<script type='text/javascript' src='/static/scripts/main.js?t={{ts}}'></script>

{{ts}}作为时间戳(我正在使用 jinja 模板)。

然后,如果您编辑 html 页面,则可以更改请求,向其中添加随机参数:

测试 1:mywebsite.com/this_page

测试 2:mywebsite.com/this_page/?i=1

测试 3:mywebsite.com/this_page/?i=2

...

它更像是一种 hack,而不是真正的解决方案,但 chrome 友好地忽略了cache-control元数据,所以没有很多干净的方法可以做到这一点。

于 2015-06-09T08:37:17.240 回答
0

以下 bash 脚本将重命名

<script src="path/to/app.js"></script>

<script src="path/to/app.js?t=18:15:45></script>

在一个index.html文件中,这将阻止移动缓存。

#!/bin/bash

time=$(date +"%T")
sed -i "s/app.js/app.js?t=${time}/" ./path/to/index.html
于 2021-03-31T14:24:50.927 回答
-1

下载这个应用程序:应用缓存清理器

  1. 打开应用程序
  2. 通过“3 dotted”按钮进入应用设置

截屏

  1. 勾选显示小部件的选项,其余由您决定

您也可以禁用 Chrome 的数据压缩策略和页面预加载。

截至目前,chrome 中没有“禁用缓存”选项

截图2

PS:因为我的rep太低,所以我没有显示图片,请帮助我增加它;p

于 2015-03-31T10:48:55.277 回答