Firebase: modifier l'emplacement de l'agent du service de
Je suis en train d'utiliser Firebase de messagerie (web). Firebase par les recherches par défaut pour le fichier "firebase-messaging-sw.js" qui détient le travailleur des services.
Le travailleur des services de script est prévu sur le chemin absolu de l'application! Par exemple : http://localhost/firebase-messaging-sw.js
Comment faire pour modifier l'emplacement par défaut?! La recherche de l'officiel docs que j'ai trouvé cette méthode: useServiceWorker
qui accepte un agent du service de l'enregistrement, mais en essayant de l'utiliser, j'obtiens une erreur que la méthode n'existe même pas!
Donc, Comment faire pour modifier l'emplacement du travailleur des services de firebase de messagerie?
Vous devez vous connecter pour publier un commentaire.
Que Michael a appelé, la méthode à utiliser est
useServiceWorker(<registration>)
.https://firebase.google.com/docs/reference/js/firebase.messaging.Messaging#useServiceWorker
La Messagerie de classe est ce qui est renvoyée lorsque vous appelez
firebase.message()
.Donc l'exemple serait:
J'ai juste essayé ce sur la démo application sur Github sans problème: https://github.com/firebase/quickstart-js/tree/master/messaging
Vous devriez être en mesure de faire
firebase.messaging().useServiceWorker(registration)
et de passer à un agent du service de l'enregistrement. Notez que vous devez le faire le plus tôt possible, avant que tous les appels, par exemplegetToken()
ouonMessage()
.method doesn't exist
!firebase.messaging().useServiceWorker()
et pasfirebase.messaging.useServiceWorker()
?En utilisant
useServiceWorker(registration)
vous pouvez utilisernotificationonclick
événement sur Firebase pousser de messagerie via la sortie de service du travailleur.firebase.messaging().useServiceWorker(registration)
travaille et a résolu mon problème, mais gardez à l'esprit que je ne sais pas si:c'est un manière sécurisée pour obtenir la charge utile à partir du serveur.
c'est la meilleure façon de traiter les notifications push.