使用 Tampermonkey 在 Google Chrome 中缓存浏览器版本
Posted
技术标签:
【中文标题】使用 Tampermonkey 在 Google Chrome 中缓存浏览器版本【英文标题】:Browser Caching Versions in Google Chrome with Tampermonkey 【发布时间】:2017-06-02 16:45:29 【问题描述】:我有一个关于在 Google Chrome 中缓存导入文件版本(通过网络请求)的问题:
假设我有script.js
,其网址是:
http://www.getscripts.com/script.js
(URL 内容在“http://”之后任意,因为 TamperMonkey 通过 HTTP 协议导入)
如果我使用 @require
在 Tampermonkey 中导入脚本,我想对其版本使用查询字符串以避免缓存。
缓存版本:
假设我首先 @require
脚本的第一个“版本”(创建它,并插入初始内容),通过给 require
一个 URL http://www.getscripts.com/script.js?v=1
,所以我传入 URL a v=1
版本的查询字符串,并且 v=1
版本的脚本文件尚未缓存。
我对@987654330@的代码做了一些修改,URL提供的脚本也更新了(我用surge.sh)。
然后,我将我的@require
URL 更改为:http://www.getscripts.com/script.js?v=2
,因此我在 URL 中传递了一个版本为 v=2
的查询字符串
然后我在代码中进行了一些更改,确保 URL 获取更新的文件,并将 @require
我的初始 URL 提供为 v=1
:http://www.getscripts.com/script.js?v=1
问题:
将返回的脚本文件(通过 HTTP 请求) - 是版本 1 还是版本 2?
我正在做的是在更新脚本代码后尝试强制下载我的脚本文件的新版本,因为 Tampermonkey 缓存脚本文件而不重新下载它们,除非在 URL 中进行了一些更改@require
(HTTP 请求是做什么的)。
【问题讨论】:
使用version参数作为版本。它应该增加以被识别为新的。 好的,谢谢。 :) 【参考方案1】:正如上面 wOxxOm 所建议的那样,通过在脚本的 URL 中添加版本参数来强制浏览器下载新版本的脚本来解决这个问题。
【讨论】:
以上是关于使用 Tampermonkey 在 Google Chrome 中缓存浏览器版本的主要内容,如果未能解决你的问题,请参考以下文章