Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Ihre Serverumgebung und FCM
Die Serverseite von Firebase Cloud Messaging besteht aus zwei Komponenten:
Das von Google bereitgestellte FCM-Backend.
Ihr App-Server oder eine andere vertrauenswürdige Serverumgebung, in der Ihre Serverlogik ausgeführt wird, z. B. Cloud Functions for Firebase oder andere von Google verwaltete Cloud-Umgebungen.
Ihr App-Server oder Ihre vertrauenswürdige Serverumgebung sendet Nachrichtenanfragen an das FCM-Backend, das Nachrichten dann an Client-Apps weiterleitet, die auf den Geräten der Nutzer ausgeführt werden.
Anforderungen an die vertrauenswürdige Serverumgebung
Die Serverumgebung Ihrer App muss die folgenden Kriterien erfüllen:
Kann korrekt formatierte Nachrichtenanfragen an das FCM-Backend senden.
Serverautorisierungsanmeldedaten und Clientregistrierungstokens sicher speichern können.
Serveroption auswählen
Sie müssen sich für eine Methode zur Interaktion mit FCM-Servern entscheiden: entweder über die Firebase Admin SDK oder über das Rohprotokoll.
Da sie von gängigen Programmiersprachen unterstützt wird und praktische Methoden für die Authentifizierung und Autorisierung bietet, ist die Firebase Admin SDK die empfohlene Methode.
Folgende Optionen stehen für die Interaktion mit FCM-Servern zur Verfügung:
Die Admin FCM API übernimmt die Authentifizierung beim Backend und erleichtert das Senden von Nachrichten und die Verwaltung von Themenabos. Mit der Firebase Admin SDK haben Sie folgende Möglichkeiten:
Nachrichten an einzelne Geräte senden
Nachrichten an Themen und Bedingungsanweisungen senden, die mit einem oder mehreren Themen übereinstimmen
Geräte für Themen abonnieren und Abo beenden
Nachrichtennutzlasten für verschiedene Zielplattformen erstellen
Das Admin Node.js SDK bietet Methoden zum Senden von Nachrichten an Gerätegruppen.
FCM bietet die FCM HTTP v1 API für Entwickler, die ein Raw-Serverprotokoll bevorzugen.
Um eine Nachricht zu senden, stellt der App-Server eine POST-Anfrage mit einem HTTP-Header und einem HTTP-Text, der aus JSON-Schlüssel/Wert-Paaren besteht.
Weitere Informationen zu den Header- und Textoptionen finden Sie unter App-Server-Sendeanfragen erstellen.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-09-03 (UTC)."],[],[],null,["\u003cbr /\u003e\n\nYour server environment and FCM\n\nThe server side of Firebase Cloud Messaging consists of two components:\n\n- The **FCM backend** provided by Google.\n- Your **app server** or other **trusted server environment** where your server logic runs, such as [Cloud Functions for Firebase](/docs/functions) or other cloud environments managed by Google.\n\n\u003cbr /\u003e\n\nYour app server or trusted server environment sends message requests to the FCM\nbackend, which then routes messages to client apps running on users' devices.\n\nRequirements for the trusted server environment\n\nYour app server environment must meet the following criteria:\n\n- Able to send properly formatted message requests to the FCM backend.\n- Able to handle requests and resend them using [exponential back-off.](https://developers.google.com/api-client-library/java/google-http-java-client/backoff)\n- Able to securely store server authorization credentials and client registration tokens.\n\nChoosing a server option\n\nYou'll need to decide on a way to interact with FCM servers: either using the\n[Firebase Admin SDK](/docs/cloud-messaging/server#firebase-admin-sdk-for-fcm) or the raw protocol.\nBecause of its support across popular programming languages and its convenience methods for\nhandling authentication and authorization, the Firebase Admin SDK is the recommended method.\n\nOptions for interacting with FCM servers include the following:\n\n- The Firebase Admin SDK, which has support for [Node](/docs/reference/admin/node/firebase-admin.messaging), [Java](/docs/reference/admin/java/reference/com/google/firebase/messaging/package-summary), [Python](/docs/reference/admin/python/firebase_admin.messaging), [C#](/docs/reference/admin/dotnet/namespace/firebase-admin/messaging), and [Go](//godoc.org/firebase.google.com/go/messaging).\n- The [FCM HTTP v1 API](/docs/reference/fcm/rest/v1/projects.messages), a REST API with secure authorization and flexible [cross-platform messaging capabilities](/docs/cloud-messaging/send-message#customize_messages_across_platforms) (the Firebase Admin SDK is based on this protocol and provides all of its inherent advantages).\n\nFirebase Admin SDK for FCM\n\nThe Admin FCM API handles authenticating with the backend and facilitates sending\nmessages and managing topic subscriptions. With the Firebase Admin SDK, you can:\n\n- Send messages to individual devices\n- Send messages to topics and condition statements that match one or more topics.\n- Subscribe and unsubscribe devices to and from topics\n- Construct message payloads tailored to different target platforms\n\nThe Admin Node.js SDK provides\nmethods for sending messages to device groups.\n\nTo set up the Firebase Admin SDK, see [Add the\nFirebase Admin SDK to Your Server](/docs/admin/setup). If you already have a Firebase project,\nstart with [Add the SDK](/docs/admin/setup#add-sdk). Also, make sure to enable the\nCloud Messaging API in the\n[Cloud Messaging settings page](//console.firebase.google.com/project/_/settings/cloudmessaging/)\nfor your project. Then, once the Firebase Admin SDK is installed, you can start writing logic to\n[build send requests](/docs/cloud-messaging/send-message).\n| The Firebase Admin SDK provides an API for subscribing and unsubscribing devices to and from FCM topics. These operations can subscribe or unsubscribe up to 1000 device registration tokens at a time. For more information, see [Manage topics from the server](/docs/cloud-messaging/manage-topics).\n\nFCM server protocol\n\nFCM provides the [FCM HTTP v1 API](/docs/reference/fcm/rest/v1/projects.messages) for developers who prefer a raw server protocol.\n\nTo send a message, the app server issues a POST request with\nan HTTP header and an HTTP body comprised of JSON key value pairs.\nFor details on the header and body options, see\n[Build App Server Send Requests](/docs/cloud-messaging/send-message)"]]