Caching 聚合物CLI构建|缓存破坏技术

Caching 聚合物CLI构建|缓存破坏技术,caching,polymer,browser-cache,polymer-cli,Caching,Polymer,Browser Cache,Polymer Cli,一点背景: 我的应用程序构建在Polymer 2.x上,托管在不支持HTTP/2且没有HTTPS证书的服务器上。我们必须支持IE11、Chrome、Firefox和Safari 问题: 我遇到了浏览器缓存的问题。我希望使用Polymer CLI生成的服务工作者来处理缓存破坏。但是,由于我们客户机的服务器没有启用HTTPS,我们无法使用它。无论如何,我们必须在单个构建上支持IE11,因此服务人员不是一个选项 我想不出一种方法来破坏新部署的缓存。在Polymer CLI github页面上,有一个关

一点背景: 我的应用程序构建在Polymer 2.x上,托管在不支持HTTP/2且没有HTTPS证书的服务器上。我们必须支持IE11、Chrome、Firefox和Safari

问题: 我遇到了浏览器缓存的问题。我希望使用Polymer CLI生成的服务工作者来处理缓存破坏。但是,由于我们客户机的服务器没有启用HTTPS,我们无法使用它。无论如何,我们必须在单个构建上支持IE11,因此服务人员不是一个选项

我想不出一种方法来破坏新部署的缓存。在Polymer CLI github页面上,有一个关于此主题的公开问题,但自2016年以来就没有任何进展。从Polymer上的YouTube视频来看,似乎有(或曾经有)一种使用Gulp拦截构建的方法,但我似乎无法理解


非常感谢您的帮助

如果要使用
gulp
构建聚合物项目,可以使用
polymer build
库。您可以在此处阅读:

这里的文档中简要提到:


然后,您可以使用类似于
gulp rev
的方法缓存bust,但您必须确保没有重写自定义元素名称,只重写文件名和导入路径。(我用
gulp rev all
试过一次,默认情况下,它将
替换为
或类似的东西。)

在创建构建运行时
polymer build sw precache config.js
我创建它是为了帮助解决这个问题。它借用了
polymer cli build
code,并支持在
polymer.json
中配置构建。它允许您在构建之前修改源流,然后修改在
polymer.json
中配置的所有构建的分叉流。这使得使用
gulp rev
gulp rev replace
进行资产版本控制变得很容易。

您是否使用polymer CLI创建项目的构建?是的,我使用的是polymer CLI的最新版本(截至2017年7月18日)。在polymer.json文件中,它被设置为构建应用程序的捆绑版本。