【发布时间】:2018-05-18 05:14:17
【问题描述】:
我正在尝试弄清楚如何使用 Firebase 向 Android 推送通知,并使用旧版 HTTP (https://fcm.googleapis.com/fcm/send) 使其正常工作,但文档建议使用较新的端点 (https://fcm.googleapis.com/v1/projects/myproject-b5ae1/messages:send)。我似乎无法正常工作,因为我不断收到此回复:
{
"error": {
"code": 400,
"message": "Request contains an invalid argument.",
"status": "INVALID_ARGUMENT"
}
}
使用https://firebase.google.com/docs/cloud-messaging/send-message#send_messages_to_specific_devices 的示例会发生这种情况:
POST https://fcm.googleapis.com/v1/projects/project-916177026973/messages:send HTTP/1.1
cache-control: no-cache
Postman-Token: 81403929-77ba-4568-8681-a854527ccb22
Content-Type: application/json
Authorization: Bearer <token redacted>
User-Agent: PostmanRuntime/6.4.1
Accept: */*
Host: fcm.googleapis.com
accept-encoding: gzip, deflate
content-length: 319
Connection: close
{
"message":{
"token" : <token redacted>,
"notification" : {
"body" : "This is an FCM notification message!",
"title" : "FCM Message",
}
}
}
我还尝试删除最后一个逗号以使其与 JSON 兼容,但仍然没有运气。有任何想法吗?
【问题讨论】:
-
您确定您使用的是正确的项目 ID 吗?看起来这部分“/project-916177026973/”包含您的发件人 ID。当您打开 Firebase 控制台时,您的项目 ID 将成为 URL 的一部分。
-
@Barns 哈利路亚!谢谢 - 让它成为一个解决方案,我会将其标记为答案。
标签: android firebase firebase-cloud-messaging