我一直在尝试使用Firebase通过HTTP POST实现推送通知发送方法。
发送请求时,Firebase会使用200代码进行响应,并返回应用的ID,但设备不会收到通知。
但是,如果通过firebase.google.com上的通知控制台发送通知,则会成功收到通知。
以下是我的请求示例:
to : https://fcm.googleapis.com/v1/projects/hikong-cbe53/messages:send
Content-Type: application/json
Authorization : Bearer ya29.c.Elpt.....2gRqTt5FCVmROVwZias
Host: fcm.googleapis.com
Content-Length: 171
{
"message": {
"topic": "gamestart",
"notification": {
"body": "This is a Firebase Cloud Messaging Topic Message!",
"title": "FCM Message",
}
}
}
回复是
43
{
"name": "projects/hikong-cbe53/messages/7496558274452412399"
}
0
为什么响应成功但通知未发送到设备?有什么方法可以跟踪请求以找到丢弃的位置吗?
答案 0 :(得分:0)
对于那些可能遇到同样问题的人,如果发送推送通知,请在编写主题名称时务必小心。
我的主题名称为gameStart
。
该请求已发布到名为gamestart
的主题,该主题不存在。
奇怪的是,Firebase没有回应400,因为主题不存在,但有200.我不知道这是否是预期的行为,但这是值得注意的事情。