środowisko serwera i FCM,
Część serwera Firebase Cloud Messaging składa się z 2 komponentów:
- FCMbackend udostępniany przez Google.
- Serwer aplikacji lub inne zaufane środowisko serwera, w którym działa logika serwera, np. Cloud Functions dla Firebase lub inne środowiska chmurowe zarządzane przez Google.
Serwer aplikacji lub zaufane środowisko serwera wysyła żądania wiadomości do backendu FCM, który następnie przekierowuje wiadomości do aplikacji klienckich działających na urządzeniach użytkowników.
Wymagania dotyczące zaufanego środowiska serwera
Środowisko serwera aplikacji musi spełniać te kryteria:
- Możliwość wysyłania prawidłowo sformatowanych żądań wiadomości do FCMbackendu.
- Możliwość obsługi żądań i ponownego wysyłania ich przy użyciu algorytmu Exponential back-off.
- Możliwość bezpiecznego przechowywania danych logowania serwera i tokenów rejestracji klienta.
Wybieranie opcji serwera
Musisz zdecydować, w jaki sposób chcesz wchodzić w interakcje z FCM serwerami: za pomocą Firebase Admin SDK lub protokołu pierwotnego. Ze względu na obsługę popularnych języków programowania i wygodne metody obsługi uwierzytelniania i autoryzacji zalecamy korzystanie z Firebase Admin SDK.
Opcje interakcji z serwerami FCM:
- Firebase Admin SDK, która obsługuje Node, Javę, Pythona, C# i Go.
- FCM Interfejs HTTP v1 API, interfejs API REST z bezpieczną autoryzacją i elastycznymi możliwościami przesyłania wiadomości na różnych platformach (Firebase Admin SDK jest oparty na tym protokole i zapewnia wszystkie jego zalety).
Firebase Admin SDK dla projektu FCM
Interfejs Admin FCM API obsługuje uwierzytelnianie na serwerze backendu oraz ułatwia wysyłanie wiadomości i zarządzanie subskrypcjami tematów. Za pomocą Firebase Admin SDK możesz:
- Wysyłanie wiadomości na poszczególne urządzenia
- Wysyłanie wiadomości do tematów i instrukcji warunkowych, które pasują do co najmniej 1 tematu.
- Subskrybowanie i anulowanie subskrypcji tematów na urządzeniach
- Tworzenie ładunków wiadomości dostosowanych do różnych platform docelowych
Pakiet Admin Node.js SDK udostępnia metody wysyłania wiadomości do grup urządzeń.
Aby skonfigurować Firebase Admin SDK, przeczytaj artykuł Dodawanie Firebase Admin SDK do serwera. Jeśli masz już projekt Firebase, zacznij od sekcji Dodawanie pakietu SDK. Pamiętaj też, aby włączyć interfejs Cloud Messaging API na stronie ustawień Cloud Messaging w projekcie. Po zainstalowaniu Firebase Admin SDK możesz zacząć pisać logikę, aby tworzyć żądania wysyłania.
FCM protokół serwera
FCM udostępnia FCM interfejs HTTP v1 API dla programistów, którzy wolą korzystać z protokołu serwera w formie nieprzetworzonej.
Aby wysłać wiadomość, serwer aplikacji wysyła żądanie POST z nagłówkiem HTTP i treścią HTTP składającą się z par klucz-wartość JSON. Szczegółowe informacje o opcjach nagłówka i treści znajdziesz w artykule Tworzenie żądań wysyłanych przez serwer aplikacji.