Firebase云消息传递API密钥

25
在 Firebase 控制台中,是否有任何重新生成 FCM(云消息传递部分)API 密钥的方法?该密钥不可编辑,并且与在 Google APIs 控制台自动生成的密钥不同。由于此错误配置,我始终无法通过 FCM 正常接收消息(出现“未经授权 401”错误)。请问如何解决?
3个回答

22

更新: 即使在云消息选项卡的新用户界面中可见FCM标记,如果删除了服务器密钥,则重新生成密钥按钮仍将可见。

enter image description here


更新: 现在似乎可以通过Firebase控制台重新生成服务器密钥,然而,只有当没有使用服务器密钥时,标签/按钮(请参阅屏幕截图)才会显示。

enter image description here

单击重新生成密钥后,它将生成一个新的服务器密钥,该密钥也可在Google Developers控制台中看到。


仍然无法从Firebase控制台重新生成API密钥。 但是,我能够通过开发者控制台重新生成它。

与@SarthakMishra讨论后,我再次浏览了控制台,并能够实际重新生成在Firebase控制台中找到的API密钥。

首先,我提供一些步骤,让您真正看到当前的服务器密钥。

  1. 通过右上角选择您的项目。
  2. 然后在左侧面板上,单击齿轮按钮并选择项目设置
  3. 然后进入Cloud-Messaging选项卡

从那里,您将能够看到服务器密钥和发送者ID。


以下是重新生成服务器密钥的步骤。前往开发者控制台

  1. 在右上角,选择与您的Firebase项目对应的项目名称。
  2. 在左侧面板中,点击 凭据

之后,您将能够查看该项目当前可用的 API 密钥。通常情况下,您会看到两个 API 密钥。一个是 服务器密钥,另一个是 Android 密钥,旁边有一个标签写着 (由 Google 服务自动生成)。点击服务器密钥。

  1. 点击重新生成密钥。应该会出现以下提示:

您想用新密钥替换当前密钥吗?

新密钥将立即生效。当前密钥将在 24 小时内永久停用。

  1. 点击替换密钥

之后,您将看到新的服务器密钥已生成。返回到可以看到服务器密钥和发送者 ID 的页面并刷新它。它应该与生成的新服务器密钥匹配。


1
尊敬的先生,您好! - wobsoriano
谢谢,最佳答案。 - Ahmad Salman

5
您不需要重新生成密钥。请按照以下步骤操作:
  • 进入Firebase控制台 (https://console.firebase.google.com)
  • 选择您的项目
  • 在左侧,单击设置图标并选择项目设置
  • 然后单击Cloud Messaging选项卡
  • 您将在那里找到您的服务器密钥。使用它,您应该可以顺利进行

你在帖子中看到了 重新生成 API 密钥的任何方法,对吧? - AL.
3
我理解,但我相信解决上述问题对于提问者来说至关重要。上述步骤将解决他/她的问题。 - Sarthak Mishra
没错。但前提是他能够修改项目或应用程序的服务器密钥集。 - AL.
控制台显然会提供正确的密钥,他为什么还要修改密钥。而且,如果由于某种原因修改了密钥,这种情况也不太可能发生。他也会在那里找到更新后的密钥。 - Sarthak Mishra
是的。如果你看这个,会感到困惑。因为帖子说键本身导致了401错误。 - AL.
1
其实我昨天也遇到了同样的问题,我使用的是API_KEY而不是服务器密钥。我认为他可能犯了同样的错误!! - Sarthak Mishra

0

在 FCM 控制台中进入您的项目,在概述窗格中,会显示一个溢出菜单图标。单击该图标,然后单击“管理项目”。在打开的页面上显示您的应用程序,您将能够下载包含每个细节(如当前 API 密钥)的 google-services.json 文件,同时您可以导航到“云消息传递”选项卡,其中将显示您的服务器密钥。


他在询问是否有一种通过控制台重新生成API密钥的方法,而不是寻找它的位置。 - AL.
这就是我想说的伙计 @int-j ... 当你创建一个 FCM 项目时,无需生成 SERVER API KEY,它已经在那里了。 - Sugam Mankad
是的,我注意到了。但这并没有真正提供解决方案。 - AL.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接