Tag: 服务人员

node.js – 如何caching使用服务工作者的handlebars.js

我想问一下服务人员。 我做了一个Web应用程序,并试图实现服务人员。 我为我的视图布局使用.hbs,当我caching静态文件时,我无法caching.hbs,.css和.js文件。 这是我如何保存我的文件: public/ css/ style.css js/ app.js manifest.json service-worker.js views/ home.hbs partial/ header.hbs 当我部署我的应用程序时,它无法cachinghome.hbs,style.css和我的app.js文件; 我无法离线访问我的网页。 我该怎么办才能解决这个问题? 这是我的app.js: if ('serviceWorker' in navigator) { navigator.serviceWorker .register('./service-worker.js', { scope: './service-worker.js' }) .then(function(registration) { console.log("Service Worker Registered"); }) .catch(function(err) { console.log("Service Worker Failed to Register", err); }) } var get = function(url) { return new Promise(function(resolve, reject) […]

服务工作者在React应用程序中刷新后导致空白页面

我有一个部署到Azure的Node应用程序,一个testing分支通向一个分段实例,一个master分支指向了分发部署。 我的应用程序可以在本地应用程序的所有实例上正常工作,但是生产和临时存在一个问题,如果它们已经被caching,它们将不会加载,并且在刷新之后将显示为空白,最后将在caching重置时正常工作。 每当我刷新生产页面,它只是空白。 服务人员正在运行(我可以在chrome serviceworkers-内部工具中看到它),但该页面从不加载。 生成的文件引用是正确的。 你可以看到这里发生的事情的一个例子: Live Site ,然后你也可以看到testing站点也失败了,部署了完全相同的代码: testing站点 。 ServiceWorker实现的整体是从create-react-app开箱的。 我已经花了好几个小时的时间来尝试跟踪这个bug,在反应样板和创build反应应用程序回购下的各种GitHub问题,没有一个真正除了限制页面caching之外的任何地方,我试图做与无济于事有: 的index.html <meta http-equiv="Cache-Control" content="no-cache, no-store, must-revalidate"/> <meta http-equiv="Pragma" content="no-cache"/> <meta http-equiv="Expires" content="0"/> 你可以find任何代码,你有任何代码在回收的托pipe所有这些代码的问题。 我只是用React / Node弄湿了自己的脚,所以我在墙上,并没有真正看到如何解决这个问题,而没有完全取消ServiceWorker的注册。 编辑:我完全从index.js文件中删除ServiceWorker代码,现在重新加载没有任何问题。 是否需要完成一个步骤才能让ServiceWorker正确地从caching中重新加载页面?