Service Worker Registration Failed
Solution 1
Solved: First thing is service worker only works in secure mode either in https or localhost. It doesnot work in local resources like file:// or http.
and second issue was during registration.
navigator.serviceWorkerContainer
.register('service-worker.js')
.then(function(reg){
Solution 2
Use chrome webserver, to run the app or just a simple command in terminal(Mac) would do. python -m SimpleHTTPServer
Saugat Bhattarai
I’m Saugat Bhattarai, a web developer and machine learning enthusiast living in Kathmandu. Currently, I am working on RealTime Vehicle Tracking and Recognition, a Computer Vision Project at Inspiring Lab Pvt. Lab.
Updated on January 14, 2022Comments
-
Saugat Bhattarai over 2 years
I am currently working on service worker to handle push notification in browser. Currently I am having this "SW registration failed error":
SW registration failed with error SecurityError: Failed to register a ServiceWorker: The URL protocol of the current origin ('null') is not supported.
Check
client1.html
andservice-worker.js
file below:service-worker.js
console.log('Started', self); self.addEventListener('install', function(event) { self.skipWaiting(); console.log('Installed', event); }); self.addEventListener('activate', function(event) { console.log('Activated', event); }); self.addEventListener('push', function(event) { console.log('Push message received', event); });
client1.html
<!doctype html> <html> <head> <title>Client 1</title> </head> <body> <script> if('serviceWorker' in navigator){ // Register service worker navigator.serviceWorker.register('service-worker.js').then(function(reg){ console.log("SW registration succeeded. Scope is "+reg.scope); }).catch(function(err){ console.error("SW registration failed with error "+err); }); } </script> </body> </html>
Can anyone help with this issue?