gpt4 book ai didi

android - 发送消息时谷歌 FCM Invalid_argument

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:51:19 29 4
gpt4 key购买 nike

我正在尝试弄清楚如何使用 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 兼容,但仍然没有成功。有任何想法吗?

最佳答案

正如 OP 指出的那样,如果您想通过 HTTP 发送消息,Firebase 现在会建议 FCM v1 端点。

To send messages via HTTP, send an HTTP POST request to the FCM v1 endpoint and specify the send method. The endpoint URL must contain the project ID of the Firebase project for your app, available in the General project settings tab of the Firebase console.

它看起来像这样:

POST https://fcm.googleapis.com/v1/projects/your_project_id_here/messages:send HTTP/

URL your_project_id_here 部分是您的 项目 ID。您需要找到项目特定的 project Id,它位于 General 选项卡下项目的 Firebase 控制台的 Settings 部分。

寻找项目ID。如果您对正确的 Project ID 有任何疑问,它也是您项目网站地址中的 URL 的一部分。看起来像:

https://console.firebase.google.com/project/your_project_id_here/settings/general/android:your_project_name

关于android - 发送消息时谷歌 FCM Invalid_argument,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47638441/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com