Şu anda tarayıcıda push bildirimi işlemek için hizmet çalışanı üzerinde çalışıyorum. Şu anda bu "SW kaydı başarısız oldu" hatası yaşıyorum. Bu konuda yardımcı olan var mı? Kontrol client1.html
ve aşağıdaki service-worker.js
dosyası:Hizmet İşçisi Kaydı Başarısız Oldu
HATA:
SW registration failed with error SecurityError: Failed to register a ServiceWorker: The URL protocol of the current origin ('null') is not supported.
hizmet 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>
"ServiceWorkerContainer.register" öğesinin 1. argümanı bir URL'dir. Hata iletisi, tarayıcınızın bir kaynağı kullanmayı reddettiğini, çünkü kaynağın null olduğunu gösterir - bu genellikle yerel (dosya: //) kaynakları için olur. 'service-worker.js' yerel - bu yüzden çapraz kaynaklı kaynak sorununu aldığınızı anlatayım – Tibrogargan
Teşekkür ederim Sadece sorunu çözdüm localhost –
içindeki klasörümüzü buraya koyarak İtici için herhangi bir referans görmüyorum kodda. Bu soru neden ['pusher'] (http://stackoverflow.com/questions/tagged/pusher) etiketine sahip? –