Firebase 401未经授权的错误FCM

我试图testingFirebase Cloud消息API,因为所有function都不能从控制台获得(特别是在应用程序处于后台时定制通知)。 但由于某些原因,我不能得到它的工作,并且总是出现401错误。 我调查了这个原因,并且在重新生成新的服务器密钥后尝试了,但是错误保持不变。 令人惊讶的是,当我生成新的服务器密钥时,它不会反映在Firebase控制台中,并将服务器密钥显示为空。 此外,我试图将我的IP地址添加到服务器的白名单IP,但仍然没有运气。 我附上了一个关于Postman的请求的屏幕截图(我用服务器密钥代替了serverKey

我坚持了几个小时,真的很感谢一些帮助。 在这里输入图像说明

我从你的截图注意到你正在使用“key:serverKey”。 你可以尝试使用“key = serverKey”来代替吗?

你也不需要有“POST fcm.googleapus.com/fcm/send”; 这是不正确的JSON,并会解释你所看到的错误。 请求的URL已经在别处定义了,所以将它从有效载荷中删除。

我不知道是否有人使用[Web API密钥]作为POSTMANtesting的[YOUR_SERVER_KEY],并继续得到'401错误'。 [Web API密钥]不是[YOUR_SERVER_KEY]。

您应该转到您的Firebase控制台并检查以下内容:

获取正确的服务器密钥。

希望它有帮助。

我面临同样的问题。

问题是我正在使用旧版服务器密钥。 当我使用新版本的服务器密钥解决了问题。

在您的Firebase控制台转到设置 – >云消息

然后使用新的服务器密钥。 它比旧版本的键长。

我也面临着同样的问题…我使用curl在发布和它只有当我的PHP文件存储在我的LocalHost服务器上。 当我尝试通过免费托pipe在线访问文件,那么它说Unautorized 401。

所以我会build议如果可以的话,使用本地主机。

我在服务器端代码(C#)有同样的问题。

您基本上使用错误的服务器密钥(或API密钥)作为服务端代码。

按照以下链接通过我张贴的计算器(有用的find服务器密钥(或API密钥))

FCM(Firebase云消息传递)推送通知与Asp.Net

请访问https://console.firebase.google.com/u/0/project/%5Bproject-name%5D/settings/cloudmessaging/

项目凭证

您可以使用服务器密钥或传统服务器密钥

我面临同样的问题,我通过使用以下步骤解决它

1-在您发送推送的服务器上,只能使用浏览器密钥,您可以从Firebase控制台或Google API控制台获取该密钥,如下图所示: –

Google API控制台

Firebase控制台,点击项目 – >设置

注意:Firebase控制台的网页API键和Google控制台浏览器键是相同的,您可以使用它们中的任意一个

在这里输入图像说明

在这里输入图像说明

2-如果你按照第一步只有你会得到未经授权的错误,要解决这个问题,你需要在谷歌控制台授权您的浏览器密钥,通过添加您的服务器IP地址您将发送推送。 点击第一张图片上方google api控制台中浏览器右侧的编辑铅笔图标

在这里输入图像说明

添加您的IP地址后点击保存确保您的设备令牌不是空的发送推,我希望您的推送将被成功发送。