【问题标题】:How to update new API key on current firebase project如何更新当前 Firebase 项目的新 API 密钥
【发布时间】:2016-09-17 16:50:07
【问题描述】:

由于某种原因,我与数据库关联的 firebase 项目 apikey 发生了变化。我仍然可以创建另一个 api 密钥,更新到应用程序中。

但是当用户尝试重置密码时,链接使用旧密钥并导致“您重置密码的请求已过期或链接已被使用”(我想我在某处读过这个问题,现在我找到了原因)。

是否可以为现有的 firebase 项目更新新的 api 密钥?

谢谢

【问题讨论】:

  • API Key 是指 FCM 的 Server Key 之类的东西吗?
  • @AL.:我的意思是 FCM 的浏览器密钥,我们可以在 console.developers.google.com/apis/…> 找到。我认为重置密码使用浏览器密钥与数据库通信并通过链接访问 https://.firebaseapp.com/__/auth/action
  • 我以前没有遇到过这种情况。也许您可以在重新生成服务器密钥时尝试与我尝试 here 相同的步骤。
  • 感谢您的帮助,这不是我要找的。我可以创建密钥,但firebase上的“重置密码”功能需要一个“浏览器密钥”来完成任务,我的情况是开发者控制台上的浏览器密钥已更改但它仍然使用旧密钥导致“重置密码”不是能够执行
  • 我明白了。我不确定您如何设置在 Firebase 项目中使用的浏览器密钥。也没见过类似的。

标签: firebase passwords


【解决方案1】:

不知何故,我原来的 apiKey 被找回了。您可以通过

在主 firebase 页面上找到与应用程序关联的原始密钥(已从 console.google.com 中删除)

概览 > 项目设置 > 常规

基本上,当用户请求恢复密码时,firebase 会发送一封带有恢复链接的电子邮件。如果您查看链接,您会发现链接中包含的 API 已不存在。

我建议您联系 Firebase 支持。我没有官方的方法来解决这个问题,但是我能想到的方法很快,如下

  1. 在 console.google.com 上创建新 API > 选择您的 firebase 项目
  2. 使用可以读取 URL 参数的函数创建一个页面。使其接收 Firebase 恢复密码 URL 并用新的 API 替换死 API 一,然后将您重定向到新的 Firebase 恢复密码 URL
  3. 通过添加您在第 2 步中创建的页面来编辑电子邮件模板,并将 Firebase 恢复完整 URL 作为参数

为了更准确,这里是一个例子。 我的项目名为“MyFirebaseProj”,我的域是“example.com”

  1. 我转到 console.google.com,选择“MyFirebaseProj”,在 API Manager 面板上,选择 Credentials > Credentials。单击创建凭据 > API 密钥。所以我得到了一个名为“MyNewLongAPI”的新 API 密钥。
  2. 我创建了一个recover-password.html 密码并拥有这个javascript 函数https://codepen.io/hieunc229/pen/mWwVbv(这个函数将读取firebase url,获取oobCode 并生成新的URL)。编辑 javascript,以便它将用户重定向到新的 URL。将此上传到我的主机 (mydomain.org/recover-password.html)
  3. 在 Firebase 控制台上,身份验证 > 电子邮件模板 > 重置密码。将链接更改为类似

<a href='http://example.com/recover-password.html?url=%LINK%'>%LINK%</a>

然后保存

现在,当用户进入您的恢复密码页面时,他们将被重定向到具有新 API 的 firebase url,它应该可以工作

希望对你有帮助!

【讨论】:

    【解决方案2】:

    如果有人遇到同样的问题,我会联系 Firebase 团队,他们正在调查此事。目前还没有办法帮助它。

    【讨论】:

    • 你有什么解决办法吗?我也有同样的问题,我在重置密码或邮箱验证链接上的API key和API key不一样。
    • 我不记得我的 API 密钥是如何恢复的。不过,你试过这个吗? stackoverflow.com/a/42758633/5775993
    • 我已经有一段时间没有遇到这个问题了,也不知道现在发生了什么。如果您还没有,请尝试联系 firebase 团队,看看进展如何!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多