Google Chrome 中的浏览器缓存版本与 Tampermonkey
Browser Caching Versions in Google Chrome with Tampermonkey
我对 Google Chrome 中导入文件(通过网络请求)的缓存版本有疑问:
假设我有 script.js
,其 URL 是:
http://www.getscripts.com/script.js
(URL 内容在 "http://" 之后任意,因为 TamperMonkey 通过 HTTP 协议导入)
如果我使用 @require
在 Tampermonkey 中导入脚本,我想为其版本使用查询字符串以避免缓存。
缓存版本:
比方说,我首先 @require
脚本的第一个 "version"(创建它,并插入初始内容),方法是给 require
一个 URL http://www.getscripts.com/script.js?v=1
,所以我传入 URL 版本 v=1
的查询字符串,并且 版本 v=1
的脚本文件尚未缓存.
我对script.js
的代码做了一些修改,URL提供的脚本也更新了(我用的是surge.sh)。
然后,我将 @require
URL 更改为:http://www.getscripts.com/script.js?v=2
,因此我传入 URL 版本 v=2
[ 的查询字符串=29=]
然后我在代码中做了一些更多的更改,确保 URL 得到更新的文件,并给 @require
我的初始 URL 和 v=1
: http://www.getscripts.com/script.js?v=1
问题:
将返回的脚本文件(通过 HTTP 请求)- 是版本 1 还是版本 2?
我正在做的是在更新脚本代码后尝试强制下载新版本的脚本文件,因为 Tampermonkey 会缓存脚本文件而不重新下载它们,除非在@require
的URL(HTTP请求是什么)。
这是通过向脚本 URL 添加版本参数强制浏览器下载脚本的新版本解决的,正如上面 wOxxOm 所建议的那样。
我对 Google Chrome 中导入文件(通过网络请求)的缓存版本有疑问:
假设我有 script.js
,其 URL 是:
http://www.getscripts.com/script.js
(URL 内容在 "http://" 之后任意,因为 TamperMonkey 通过 HTTP 协议导入)
如果我使用 @require
在 Tampermonkey 中导入脚本,我想为其版本使用查询字符串以避免缓存。
缓存版本:
比方说,我首先 @require
脚本的第一个 "version"(创建它,并插入初始内容),方法是给 require
一个 URL http://www.getscripts.com/script.js?v=1
,所以我传入 URL 版本 v=1
的查询字符串,并且 版本 v=1
的脚本文件尚未缓存.
我对script.js
的代码做了一些修改,URL提供的脚本也更新了(我用的是surge.sh)。
然后,我将 @require
URL 更改为:http://www.getscripts.com/script.js?v=2
,因此我传入 URL 版本 v=2
[ 的查询字符串=29=]
然后我在代码中做了一些更多的更改,确保 URL 得到更新的文件,并给 @require
我的初始 URL 和 v=1
: http://www.getscripts.com/script.js?v=1
问题:
将返回的脚本文件(通过 HTTP 请求)- 是版本 1 还是版本 2?
我正在做的是在更新脚本代码后尝试强制下载新版本的脚本文件,因为 Tampermonkey 会缓存脚本文件而不重新下载它们,除非在@require
的URL(HTTP请求是什么)。
这是通过向脚本 URL 添加版本参数强制浏览器下载脚本的新版本解决的,正如上面 wOxxOm 所建议的那样。