美好的一天,
我正在尝试使用FCM中的此URL发送消息:
https://fcm.googleapis.com/fcm/send
标题为
Authorization value of **key:*Key from Firebase Console***
Content-Type: **application/json**
身体由以下部分组成:
{
"to" : "MyKey generated",
"notification" : {
"body" : "Hey",
"title" : "Hey"
}
}
但我总是收到的结果是:
{
"multicast_id": 7942550122547405787,
"success": 0,
"failure": 1,
"canonical_ids": 0,
"results": [
{
"error": "MismatchSenderId"
}
]
}
我得到的服务器密钥来自:
我的网址引用是FCM服务器中的文档。
我在Postman测试这个。我错过了什么?感谢
答案 0 :(得分:2)
根据文档
注册令牌与某组发件人绑定。当客户端应用程序注册FCM时,它必须指定允许哪些发件人发送消息。在向客户端应用程序发送消息时,您应该使用其中一个发件人ID。如果您切换到其他发件人,现有的注册令牌将无效。
所以听起来您正在尝试向与发件人ID无关的ID发送推送通知。您应该在正确的位置验证您是否拥有正确的密钥
答案 1 :(得分:0)
标题必须像这样
Content-Type:application/json
Authorization:key=AIzaSyZ-1u...0GBYzPu7Udno5aA
检查服务器密钥的有效性
api_key=YOUR_SERVER_KEY
curl --header "Authorization: key=$api_key" \
--header Content-Type:"application/json" \
https://fcm.googleapis.com/fcm/send \
-d "{\"registration_ids\":[\"ABC\"]}"
如果一切正常,那么你需要重新检查senderId
答案 2 :(得分:0)
Android应用上的Google Services之类的声音配置不正确。
登录Firebase控制台,打开您的项目(单击齿轮图标)。在“常规”标签下,向下滚动到“下载最新的配置文件”,然后单击按钮以下载google-services.json(其中应包含正确的项目和发件人ID)
将其发送给您的移动开发者,使其包含在应用程序中,并在应用程序发送了有效的推送令牌后,再次尝试发送。
答案 3 :(得分:0)
此错误是由于令牌无效造成的 我解决了这个问题,正确输入令牌
答案 4 :(得分:0)
通过 POSTMAN 发布 FCM
授权:key=YOUR-SERVER-KEY
内容类型:application/json
现在点击 Body
而不是选择 Row
并将值添加为如下所示的对象
确保 Row 在 JSON(application/json)
中
{
"to": "cpa8cZPjq-w:APA91bF122f1Rnhu9v47bL
YMajaNTHAIU5SzItDwTy9o2MCIveG0PlK78VPvp3d
CqjwnUKZ4
ngi1trSyM3_aXttW62iknFfbPGtjRLhZr6wq-3qFdboz8gzdOGPz**********",
"notification": {
"body": "Hello",
"title": "This is test message."
}
}
POST /fcm/send HTTP/1.1
主机:fcm.googleapis.com