我正在开发一个无服务器客户端应用程序,该应用程序使用Firebase身份验证和Google的其他服务。突然,FB登录身份验证停止了,一切都很好。碰巧,当尝试登录用户时,我获得了带有以下正文的400 BADREQUEST:
{
"error": {
"code": 400,
"message": "API key expired. Please renew the API key.",
"errors": [{
"message": "API key expired. Please renew the API key.",
"domain": "global",
"reason": "badRequest"
}],
"status": "INVALID_ARGUMENT"
}
}
引起问题的网址是:
https://www.googleapis.com/identitytoolkit/v3/relyingparty/getProjectConfig?key=AIzaSyDXJ1Lwo_Md0xZzFfPX9Y8dQWOaODE4uiM&cb=1534851951010
一些奇怪的事情:
我还创建了一个全新的应用程序并在本地执行。结果一样。
有什么想法吗?
添加:我刚刚发现Identity API目前正在有效地向我返回100%的失败。
答案 0 :(得分:1)
我也能够解决此问题,这有助于我解决问题:
转到Google api控制台并找到密钥:Android密钥(由Google Service自动创建)。当您选择以下选项时,Firebase会自动生成这些密钥:身份验证中的电子邮件/密码。复制该密钥。
转到Android Studio中“项目”部分下的google-services.json。单击该文件,然后查找api_key-> current_key。在步骤1中使用api密钥修改该值。
答案 1 :(得分:0)
我能够通过进入我的Firebase项目设置来解决此问题>常规>使用Web API密钥值更新我的旧API密钥。
答案 2 :(得分:0)
我遇到了同样的问题,我通过以下方法解决了它:
重置我的项目,其中包括...
删除Google-Services.json
文件,替换SHA1密钥,同步并在项目中添加新的Google-Services.json
文件。希望对您有帮助。
欢呼
答案 3 :(得分:0)
打开Firebase控制台。 转到项目设置->常规选项卡->您的Web API密钥将被自动更新。然后复制该API密钥,并在您的environment.ts文件中将其替换为API密钥,它将起作用。
希望对您有帮助!
答案 4 :(得分:0)
首先,转到https://console.firebase.google.com/
然后选择Android项目
然后转到该项目的“设置”
首先,请检查:是否有sha1和sha256指纹用于调试apk(必需)并释放apk(如果创建签名的apk是必需的)
您将看到一个下载JSON文件按钮,单击它,然后下载文件。
然后转到Android Studio并打开您的项目。
然后在左侧菜单上,单击项目子文件,然后找到googleservices.json文件。
双击打开该文件
现在打开下载的文件googleservices.json,并在记事本中打开它。
现在复制所有内容,只需选择所有内容并复制。
现在转到Android Studio,右键单击Google服务文件(在IntelliJ中),然后单击“与剪贴板比较”,然后仔细接受所有差异到Android Studio文件中。
或者您可以直接删除所有内容,然后将复制的内容粘贴到Android Studio JSON文件中。
完成! 注意:执行此操作之前,请确保已复制文件。
答案 5 :(得分:0)
就我而言,Android Studio 没有根据 string.xml
中更新的数据正确生成 google-services.json
,所以当我手动替换旧的 API 密钥时,它终于起作用了。