/serviceworker.js
从我的根目录中删除后,Chrome仍然运行我从我的webroot中删除的服务工作者.如何从我的网站和Chrome中卸载服务工作者,以便我可以重新登录我的网站?
我已将问题跟踪到Service Work的缓存机制,我只是想暂时删除,直到我有时间调试它.我正在使用的登录脚本会重定向到Google的服务器,以便他们登录自己的Google帐户.但是我从login.php页面得到的只是一条ERR_FAILED
消息.
我想测试服务工作者,但我有一个虚拟主机设置,我似乎无法在localhost上启用https.
每当我尝试在localhost上注册服务工作者时,如何将本地虚拟主机URL列入白名单以测试服务工作者?Chrome表示https是启用服务工作者所必需的.如何至少在本地测试中超越此限制.
javascript google-chrome service-worker progressive-web-apps
服务工作者可以做什么,网络工作者不能?或相反亦然?
Web工作者似乎是服务工作者功能的一个子集.它是否正确?
我是React的新手,我想知道下面代码中registerServiceWorker()的目的是什么?
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
import registerServiceWorker from './registerServiceWorker';
ReactDOM.render(<App />, document.getElementById('root'));
registerServiceWorker();
Run Code Online (Sandbox Code Playgroud) 大多数浏览器为localStorage提供每个域5MB的存储限制.服务工作者是否存在此类内存限制/限制?
我知道网络工作者(服务工作者所在的网站)没有这样的限制.但Web Workers并不完全用于资产缓存,而是更多地用于处理(因此CPU是主要关注点).
如果内存大小没有限制,那么设计糟糕的网站可能会使浏览器崩溃吗?
根据MDN上的这个文档:
之后每24小时左右下载一次.它可能会更频繁地下载,但必须每24小时下载一次,以防止坏脚本长时间烦人.
Firefox和Chrome也是如此吗?或者更新到服务工作者javascript只在用户导航到网站时发生?
创建react应用程序时,默认情况下会调用服务工作程序.为何使用服务工作者?默认调用的原因是什么?
不透明响应被定义为Fetch API的一部分,并表示在未启用CORS时对远程源发出的请求的结果.
关于如何使用不透明的响应(包括JavaScript和页面上的资源)存在哪些实际限制和"陷阱"?
service-worker.js:1 GET http://localhost:8080/service-worker.js net::ERR_FILE_EXISTS
Run Code Online (Sandbox Code Playgroud)
这是我在注册服务工作者后每次刷新时得到的错误.我已确保service-worker.js文件存在于根目录中.此外,服务人员已注册并正常工作.但我仍然不断收到这个错误.我也在使用localhost.
这是我的service-worker.js文件:
console.log("SW startup");
var CACHE_NAME = "my_cache";
var urlsToCache = [
'./',
'./css/style.css',
'./js/script.js'
];
self.addEventListener('install', function(event) {
// Perform install steps
event.waitUntil(
caches.open(CACHE_NAME)
.then(function(cache) {
console.log('Opened cache');
return cache.addAll(urlsToCache);
})
);
});
self.addEventListener('fetch', function(event) {
event.respondWith(
caches.open(CACHE_NAME).then(function(cache) {
return cache.match(event.request).then(function (response) {
return response || fetch(event.request.clone()).then(function(response) {
console.dir(response);
console.log('hi');
cache.put(event.request.clone(), response.clone());
return response;
});
});
})
);
});
Run Code Online (Sandbox Code Playgroud)
script.js文件:
if (navigator.serviceWorker) {
console.log("ServiceWorkers are supported");
navigator.serviceWorker.register('service-worker.js')
.then(function(reg) {
console.log("ServiceWorker registered ???");
console.dir(reg);
})
.catch(function(error) …
Run Code Online (Sandbox Code Playgroud) 我读取服务工作者的离线缓存类似于浏览器缓存.那么为什么更喜欢服务工作者进行这种缓存.甚至浏览器缓存也会检查是否修改了文件,然后从缓存中提供服务,而服务工作者则从我们的代码中处理相同的事情.但默认情况下浏览器具有该功能,为什么更喜欢服务工作者?
service-worker ×10
javascript ×7
reactjs ×2
cors ×1
fetch-api ×1
html ×1
html5 ×1
react-dom ×1
w3c ×1
web-worker ×1