web-dev-qa-db-ja.com

Firebaseでウェブサイトのgcm_sender_idを取得する方法

Webサイトでプッシュ通知を使用しようとしています。

私はfcmを試しています。 Googleのドキュメント( https://firebase.google.com/docs/cloud-messaging/js/client )で、mnifest.jsonファイルでgcm_sender_idを使用するように言われましたが、見つかりませんfirebaseページのどこに https://console.firebase.google.com/project/fir-98798789/overview

また彼らは言及しました

「ブラウザ送信者ID」とFirebaseプロジェクト設定に表示されるプロジェクト固有の送信者IDの値を混同しないでください。 manifest.jsonのブラウザー送信者IDは固定値であり、すべてのFCM JavaScriptクライアントに共通です。

おかげで、

13
scriptkiddie1

ウェブアプリのmanifest.jsonに入力する送信者IDは、Firebaseプロジェクトから独立しています。すべてのWebアプリ(あなたのもの、私のもの、みんなのもの)でも同じです。

"gcm_sender_id": "103953800507"

したがって、上記の行をプロジェクトのmanifest.jsonにコピーして貼り付けます。 FCMドキュメントのこのセクション を参照してください。

29

この手順をスキップしても、Firebase Messagingは実際に機能しているようです。例として https://web-Push-demo-11213.firebaseapp.com を見てください。

このデモWebサイトにはマニフェストすらありませんが、FCMとの通信、トークンの取得、更新などを行うことができます。認証キーがわからないため、実際にプッシュを送信することはできません、しかしあなたはアイデアを得ます-私はそれをテストしました、それは動作します。

これに照らして、なぜこの明示的な要件が必要なのかはわかりません。

また、githubのFCM SDKソースを見ると、gcm_sender_idではない103953800507のマニフェストがある場合にのみエラーをスローするように見えます。それ以外のすべて(マニフェストのgcm_sender_idフィールドがない、またはWebサイトにマニフェスト自体がない)の場合、問題なく動作します。

ここのコードを参照してください: https://github.com/firebase/firebase-js-sdk/blob/master/packages/messaging/src/controllers/window-controller.ts#L329-L355

3
abhishekcghosh

移動 https://console.firebase.google.com ->プロジェクトを選択します。

設定->クラウドメッセージング->プロジェクトの資格情報->送信者ID

この助けを願っています!

0
Binh Ho