service-worker.js:1 GET http://localhost:8080/service-worker.js net::ERR_FILE_EXISTS
これは、サービスワーカーを登録した後に更新するたびに表示されるエラーです。 service-worker.jsファイルがルートディレクトリに存在することを確認しました。サービスワーカーも登録されており、正常に機能しています。しかし、このエラーは引き続き発生します。また、ローカルホストで作業しています。
これは私の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;
});
});
})
);
});
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) {
console.log("Failed to register ServiceWorker ಠ_ಠ");
console.dir(error);
});
}
同じ問題が発生しています。安全に無視できます。
このバグは、Chromeからのノイズの除去を追跡します。 https://code.google.com/p/chromium/issues/detail?id=541797
Chrome 50で始まるライブでなければなりません。
スレッドから:
更新が見つからなかったため、Service Workerのベイリングのエラーコードを改善
ServiceWorkerWriteToCacheJobは、更新されたスクリプトを取得して書き込むURLRequestJobです。新しいスクリプトは古いスクリプトと同じであるため、更新を中止しようとすると、ネットワークエラーで失敗します。
現在、DevToolsコンソールとネットログにERR_FAILEDエラーが表示されますが、実際のネットワークエラーに対してもエラーが発生するため、紛らわしくデバッグが困難です。このパッチはエラーをFILE_EXISTSに変更するため、ジョブが「失敗」した理由がより明確になります。