Firebase FCM使用正确的服务器密钥返回未经授权的错误

Firebase FCM使用正确的服务器密钥返回未经授权的错误,firebase,curl,push-notification,firebase-cloud-messaging,Firebase,Curl,Push Notification,Firebase Cloud Messaging,我正在尝试使用Firebase云消息从我的服务器发送推送通知,但不断收到以下错误: 客户端错误:POSThttps://fcm.googleapis.com/v1/projects/my-project/messages:send导致401未经授权的响应。。。请求具有无效的身份验证凭据。预期OAuth 2访问 我在网上到处找,到处都提到“使用服务器密钥而不是API密钥”。我正在这样做,但仍然收到错误。网上没有任何帮助 这是我的要求: POST https://fcm.googleapis.com

我正在尝试使用Firebase云消息从我的服务器发送推送通知,但不断收到以下错误:

客户端错误:
POSThttps://fcm.googleapis.com/v1/projects/my-project/messages:send
导致
401未经授权的
响应。。。请求具有无效的身份验证凭据。预期OAuth 2访问

我在网上到处找,到处都提到“使用服务器密钥而不是API密钥”。我正在这样做,但仍然收到错误。网上没有任何帮助

这是我的要求:

POST https://fcm.googleapis.com/v1/projects/my-project/messages:send

Headers:
    Authorization: Bearer <MY SERVER KEY>
    Content-Type: application/x-www-form-urlencoded (I have also tried application/json)

Body:
    {
        "message": {
            "topic": "",
            "notifications": {
                "title": "Some title",
                "body": "Some notification body"
            }
        }
    }
POSThttps://fcm.googleapis.com/v1/projects/my-project/messages:send
标题:
授权:持票人
内容类型:application/x-www-form-urlencoded(我也尝试过application/json)
正文:
{
“信息”:{
“主题”:“,
“通知”:{
“头衔”:“某个头衔”,
“主体”:“某个通知主体”
}
}
}

直接从Firebase控制台推送通知工作正常,我无法使其在服务器端工作。

您似乎正在使用,但您正在尝试使用的说明对其进行授权。它们不兼容。作为缔约国:

重要提示:控制台中找到的服务器密钥无法授权发送 通过HTTP v1 API发出的请求它仅用于传统HTTP和 XMPP请求


如果要使用v1 API,必须遵循中的说明。如果您不想使用v1 API,则必须使用旧版API。

听起来您为服务器密钥传递的任何内容都是无效的。@DougStevenson-我从Firebase仪表板复制了服务器密钥