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

时间:2013-09-05 02:16:03

标签: google-chrome

如何在 Chrome for Android 上停用缓存?

我更改了我的网页内容,并刷新了网页,但内容仍旧。

我已经设置了如下所示的nginx配置,但它没有效果。

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

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

6 个答案:

答案 0 :(得分:10)

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

在Windows或Mac上使用Google Chromes网络工具可以让您进行“远程调试”。

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

答案 1 :(得分:6)

目前无法在Android上为Chrome禁用缓存,但可以清除缓存。

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

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

  1. 点击菜单按钮(右上角有三个点)。
  2. 点击菜单中的设置
  3. 点击菜单中的隐私
  4. 点击底部的清除浏览数据
  5. 从列表中选择清空缓存
  6. 确认清晰的浏览数据。

答案 2 :(得分:1)

要首先禁用缓存,您必须对正在编辑的缓存执行脚本/ 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

...

这更像是一个黑客而不是一个真正的解决方案,但是chrome会忽略cache-control元,所以没有很多干净的方法来做它。

答案 3 :(得分:0)

下载此应用程序:App Cache Cleaner

  1. 打开应用
  2. 通过“3点”按钮
  3. 转到应用设置

    screenshot

    1. 勾选标记显示小部件的选项,其余部分由您决定
    2. 您也可以停用Chrome的数据压缩策略和预加载页面。

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

      screenshot2

      PS:我不会因为我的低代表而显示图片,请帮我增加; p

答案 4 :(得分:0)

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

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

  1. 点击Chrome浏览器右上角的下拉菜单
  2. 点击&#34;新的隐身标签&#34;
  3. 导航到您的网站,查看您最近的所有更改。
  4. 重要事项:要在使用隐身模式查看后查看新的更改,您必须完全关闭隐身模式并重新打开,因为当前标签也会缓存。

答案 5 :(得分: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