您的伺服器環境和 FCM
Firebase Cloud Messaging 的伺服器端由兩個元件組成:
- Google 提供的FCM 後端。
- 您的應用程式伺服器或其他執行伺服器邏輯的受信任伺服器環境,例如Cloud Functions for Firebase或由 Google 管理的其他雲端環境。
您的應用程式伺服器或受信任的伺服器環境將訊息請求傳送到 FCM 後端,然後後端將訊息路由到在使用者裝置上執行的用戶端應用程式。
可信任伺服器環境要求
您的應用程式伺服器環境必須滿足以下條件:
- 能夠向 FCM 後端發送格式正確的訊息請求。
- 能夠處理請求並使用指數退避重新發送它們。
- 能夠安全地儲存伺服器授權憑證和客戶端註冊令牌。
選擇伺服器選項
您需要決定與 FCM 伺服器互動的方式:使用Firebase Admin SDK或原始協定。由於它支援流行的程式語言以及處理身份驗證和授權的便捷方法,Firebase Admin SDK 是推薦的方法。
與 FCM 伺服器互動的選項包括以下內容:
- Firebase Admin SDK,支援Node 、 Java 、 Python 、 C#和Go 。
- FCM HTTP v1 API是一種具有安全授權和靈活的跨平台訊息傳遞功能的REST API(Firebase Admin SDK 基於此協定並提供其所有固有優勢)。
適用於 FCM 的 Firebase 管理 SDK
管理 FCM API 處理後端身份驗證,並有助於發送訊息和管理主題訂閱。透過 Firebase 管理 SDK,您可以:
- 向各個設備發送訊息
- 將訊息傳送到與一個或多個主題相符的主題和條件語句。
- 訂閱和取消訂閱裝置的主題
- 建構適合不同目標平台的訊息有效負載
管理 Node.js SDK 提供了向設備群組發送訊息的方法。
若要設定 Firebase Admin SDK,請參閱將 Firebase Admin SDK 新增至您的伺服器。如果您已有 Firebase 項目,請從新增 SDK開始。另外,請確保在您的專案的雲端訊息傳遞設定頁面中啟用雲端訊息傳遞 API。然後,一旦安裝了 Firebase Admin SDK,您就可以開始編寫邏輯來建立發送請求。
FCM伺服器協定
FCM 為喜歡原始伺服器協定的開發人員提供FCM HTTP v1 API 。
為了傳送訊息,應用程式伺服器發出帶有 HTTP 標頭和由 JSON 鍵值對組成的 HTTP 正文的 POST 請求。有關標頭和正文選項的詳細信息,請參閱構建應用程式伺服器發送請求