web-dev-qa-db-fra.com

comment obtenir gcm_sender_id pour un site web dans firebase

J'essaie d'utiliser la notification Push pour mon site Web. 

J'essaye fcm. Dans la documentation Google ( https://firebase.google.com/docs/cloud-messaging/js/client ), ils nous ont dit d'utiliser gcm_sender_id dans le fichier mnifest.json, mais je ne le trouve pas dans Firebase. page https://console.firebase.google.com/project/fir-98798789/overview

En outre, ils ont mentionné

Ne confondez pas "l'ID d'expéditeur du navigateur" avec la valeur d'ID d'expéditeur spécifique au projet indiquée dans les paramètres de votre projet Firebase. L'ID d'expéditeur du navigateur pour manifest.json est une valeur fixe commune à tous les clients JavaScript FCM.

Merci,

7
scriptkiddie1

L'ID de l'expéditeur que vous entrez dans le fichier manifest.json de votre application Web est indépendant de votre projet Firebase. Il en va de même pour toutes les applications Web (les vôtres, les miennes, celles de tous):

"gcm_sender_id": "103953800507"

Il suffit donc de copier/coller la ligne ci-dessus dans le fichier manifest.json de votre projet. Voir cette section de la documentation de la FCM .

19
Frank van Puffelen

On dirait que Firebase Messaging fonctionne réellement même si vous sautez cette étape. Regardez https://web-Push-demo-11213.firebaseapp.com à titre d'exemple.

Ce site Web de démonstration n’a même pas de manifeste, mais il est capable de parler à FCM, d’obtenir des jetons, de les actualiser, etc. .. Désolé, vous ne pourrez pas envoyer de Push, car vous ne connaissez pas la clé d’authentification. , mais vous avez l’idée - je l’ai testée, cela fonctionne.

À la lumière de cela, je ne sais pas pourquoi cette exigence manifeste cependant. 

En outre, en regardant la source FCM SDK sur github, on dirait qu’elles ne génèrent une erreur que si vous avez un manifeste avec un gcm_sender_id qui n’est pas 103953800507. Pour tout le reste (le champ gcm_sender_id dans le manifeste manquant, ou même le manifeste lui-même manquant sur le site Web), cela fonctionne aussi bien.

Voir le code ici: https://github.com/firebase/firebase-js-sdk/blob/master/packages/messaging/src/controllers/window-controller.ts#L329-L355

1
abhishekcghosh