Join the AMA (Ask Me Anything) with the Firefox leadership team to celebrate Firefox 20th anniversary and discuss Firefox’s future on Mozilla Connect. Mark your calendar on Thursday, November 14, 18:00 - 20:00 UTC!

為了改善您的使用體驗,本網站正在進行維護,部分功能暫時無法使用。若本站的文件無法解決您的問題,想要向社群發問的話,請到 Twitter 上的 @FirefoxSupport 或 Reddit 上的 /r/firefox 發問,我們的社群成員將很快會回覆您的疑問。

搜尋 Mozilla 技術支援網站

防止技術支援詐騙。我們絕對不會要求您撥打電話或發送簡訊,或是提供個人資訊。請用「回報濫用」功能回報可疑的行為。

了解更多

Not able to register service worker in mozilla 44

  • 1 回覆
  • 1 有這個問題
  • 8 次檢視
  • 最近回覆由 philipp

more options

Hi i am trying to implement push notification by the use of service worker. I am able to see push notifications in chrome but i am unable to even register my service worker in mozilla 44.

My code to register my service worker :

if ('serviceWorker' in navigator) {

 console.log('Service Worker is supported');
 navigator.serviceWorker.register('sw.js').then(function() {
   return navigator.serviceWorker.ready;
 }).then(function(reg) {
   console.log('Service Worker is ready :^)', reg);
   reg.pushManager.subscribe().then(function(sub) {
     console.log('endpoint:', sub.endpoint);
     console.log('Subs id',sub.endpoint.substring(sub.endpoint.lastIndexOf('/')+1,sub.endpoint.length));
       subid =  sub.endpoint.substring(sub.endpoint.lastIndexOf('/')+1,sub.endpoint.length);
   });
 }).catch(function(error) {
   console.log('Service Worker error :^(', error);
 });

}

Also, code for service worker push listener :

self.addEventListener('push', function(event) {

 console.log('Push message', event);
 console.log('Check',event.data);
 var title = '123';
 var notification=;

 event.waitUntil(
   self.registration.showNotification(title, {
     'body': '123',
     'icon': 'images/icon.png'
   });

); });

This is working fine in chrome as i am able to see all my messages in console. But in mozilla none of these messages are shown. Please help me with this?

Hi i am trying to implement push notification by the use of service worker. I am able to see push notifications in chrome but i am unable to even register my service worker in mozilla 44. My code to register my service worker : if ('serviceWorker' in navigator) { console.log('Service Worker is supported'); navigator.serviceWorker.register('sw.js').then(function() { return navigator.serviceWorker.ready; }).then(function(reg) { console.log('Service Worker is ready :^)', reg); reg.pushManager.subscribe().then(function(sub) { console.log('endpoint:', sub.endpoint); console.log('Subs id',sub.endpoint.substring(sub.endpoint.lastIndexOf('/')+1,sub.endpoint.length)); subid = sub.endpoint.substring(sub.endpoint.lastIndexOf('/')+1,sub.endpoint.length); }); }).catch(function(error) { console.log('Service Worker error :^(', error); }); } Also, code for service worker push listener : self.addEventListener('push', function(event) { console.log('Push message', event); console.log('Check',event.data); var title = '123'; var notification=''; event.waitUntil( self.registration.showNotification(title, { 'body': '123', 'icon': 'images/icon.png' }); ); }); This is working fine in chrome as i am able to see all my messages in console. But in mozilla none of these messages are shown. Please help me with this?

所有回覆 (1)

more options

hi, support.mozilla.org is intended for end-user support. if you have a question regarding web development please refer to Where to go for developer support instead. thank you for your understanding!

https://hacks.mozilla.org/2016/03/debugging-service-workers-and-push-with-firefox-devtools/