发布到Firebase云消息传递时的401响应,当服务器密钥有效时

时间:2017-01-19 12:12:07

标签: google-app-engine firebase firebase-cloud-messaging

我正在实施从我的google-app-engine服务器向客户端应用发送推送通知。 我在向Firebase云消息服务器(https://fcm.googleapis.com/fcm/send)发送帖子消息时收到响应401。我已按照https://firebase.google.com/docs/cloud-messaging/server中的说明进行操作,因此我使用服务器密钥发送“授权”标题。当我用curl检查密钥的有效性时:

curl --header "Authorization: key=$api_key" \
       --header Content-Type:"application/json" \
       https://fcm.googleapis.com/fcm/send \
       -d "{\"registration_ids\":[\"ABC\"]}"

我收到了回复:

{"multicast_id":6193339963814546500,"success":0,"failure":1,"canonical_ids":0,"results":[{"error":"InvalidRegistration"}]}

这应该意味着我的服务器密钥有效。 我按照https://firebase.google.com/docs/cloud-messaging/http-server-ref中描述的401的“推荐行动”进行了跟踪 除了最后一个:“请求来自服务器密钥IP中未列入白名单的服务器。” 这可能是原因吗?怎么检查?

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。这是我的错。我没有正确地将json截断为字符串,而我的服务器密钥实际上并不是正确的。 抱歉打扰。