提问者:小点点

Firebase通知:通过HTTP Post发送消息


我现在已经在我的应用程序中设置了Firebase通知,当我发送消息时,消息会发送给我的应用程序的所有用户。(我目前通过Firebase控制台发送消息。我想用另一种不涉及Firebase控制台的方式发送推送通知,我相信HTTP Post是一种简单的方式。如何使用HTTP POST远程发送推送通知?


共1个答案

匿名用户

编辑是因为注释:请确保不要将服务器密钥包含到您的客户端中。对于“不那么伟大的人”来说,有一些方法可以找到它并做一些事情。实现这一目标的正确方法是让您的客户端指示您的应用服务器发送通知。

您必须向google-api-endpoint发送一个HTTP-Post。

您需要以下标题:

Content-Type: application/json
Authorization: key={your_server_key}

您可以在Firebase-Project中获得您的服务器密钥。

HTTP-posteContent:示例

{ 
    "notification": {
        "title": "Notification Title",
        "text": "The Text of the notification."
    },
    "project_id": "<your firebase-project-id",
    "to":"the specific client-device-id"
}

示例设备ID:

cc6VGMjpIiA:APA91bGLpm5Z2p0NNh7nxttCTVd1tTsL2jObDaS9U8G1YjDjkpwkBlRLjU89ns4ujQ7rFU1Z2NshpUAX2RiQiIDKhHJdB0RtSS3H6nTT-lGEkIpzVtVzJpLIVqzSVbRjmyYlxD3BSLZl

您必须将此请求发送到。到目前为止,不可能使用API向所有设备发送通知。为此,您必须使用Firebase-Console。

我喜欢使用Chrome-Plugin“邮递员”来发送API请求,因为你可以保存你的HTTP-Requests。非常舒适。

您也可以使用curl。

curl 
-X POST 
-d "{ "notification": {
    "title": "Notification Title",
    "text": "The Text of the notification."
  },
  "project_id": "<your firebase-project-id",
  "to":"the specific client-device-id"
}" 
-H "Content-Type: application/json" 
-H "Authorization: key={your_server_key}" 
https://fcm.googleapis.com/fcm/send