我正在根据这篇文章试验 HTML5 ServiceWorker API 。文章中提到
当用户导航到您的站点时,浏览器会尝试重新下载在后台定义服务工作者的脚本文件。如果 service worker 文件与它当前拥有的文件相比甚至有一个字节的差异,它就会认为它是“新的”。
从中我得出的结论是,如果我要更改工作者脚本文件中的任何内容,它将提示浏览器定义一个新版本,当引用旧版本工作者的所有页面都终止时,该版本将启动。
编辑:显然浏览器正在缓存
serviceworker.js
文件本身,这就是为什么没有选择新版本的原因。谁能告诉我如何避免缓存工作文件?我浏览了可用的在线演示(包括MDN和W3C Webmob 的 GitHub 上的演示)
这是我的文件结构:
|- index.html
|- serviceworker.js // the actual worker
|- serviceworker-cache-polyfill.js
|- serviceworker-registration.js // contains the registration logic for the worker
|- style.css
我将缓存配置为包含以下 URL:
- “/style.css”