错误:无法获取 Firebase 项目项目名称。请确保该项目存在并且您的帐户有权访问它
Posted
技术标签:
【中文标题】错误:无法获取 Firebase 项目项目名称。请确保该项目存在并且您的帐户有权访问它【英文标题】:Error: Failed to get Firebase project project-name. Please make sure the project exists and your account has permission to access it 【发布时间】:2020-12-07 22:38:42 【问题描述】:我尝试像往常一样运行firebase deploy
,但遇到了这个错误:
。
我已经运行 firebase login
并得到“已经以 email@example.com 登录”
firebase-debug.log
文件显示了一些 401 http 响应,其中一些具有以下文本:
“请求具有无效的身份验证凭据”和“无效令牌”
如何解决?
【问题讨论】:
你有错误的堆栈跟踪吗?像 401 / 503 等? 尝试使用firebase login --reauth
重新认证。
我建议你 1) 更新到 latest Firebase CLI version,2) 按照 Sushan 的建议,运行 firebase login --reauth
,然后再次尝试 firebase deploy
,让我们知道输出。
非常感谢苏珊!我想这是因为差不多一年前我更改了我的谷歌帐户密码,而我已经一年多没有在这台机器上从事这个项目了。 (我有相同的消息“已经登录,调试日志中的 401 作为 OP)
更新到 Firebase CLI 版本为我修复了它。
【参考方案1】:
这对我来说很有效,
firebase logout
firebase login
【讨论】:
我遇到了类似的问题。它也显示已经登录。但是当我尝试注销并登录时,它就起作用了。 你是木偶大师! 你拯救了我的一天! 效果很好。即使 Firebase 说您已登录,但当您注销时,您会看到:"Invalid refresh token for me@example.com, did not need to deauthorize"
这是一个简单的咒语,但非常牢不可破【参考方案2】:
这对我有用:
运行
firebase 使用 --add
并重新选择项目
【讨论】:
登录和注销以及使用 firebase -add 对我有用。 这是必需的,因为它失去了上下文。在此之前已登录,因此登录/注销不是解决方案。【参考方案3】:有时会出现令牌错误,您可以检查debug.log
debug.log 中的错误消息: [debug] [2020-10-13T23:01:28.050Z] <<< HTTP RESPONSE BODY "error":"code":401,"message":"Request had invalid authentication credentials. Expected OAuth 2 access token, login cookie or other valid authentication credential. See https://developers.google.com/identity/sign-in/web/devconsole-project.","status":"UNAUTHENTICATED"
错误解决方法使用
firebase login --reauth
再次 firebase init
重新初始化项目
选择项目并
firebase deploy
【讨论】:
【参考方案4】:简单
使用firebase login --reauth
【讨论】:
【参考方案5】:尝试退出 firebase CLI,然后使用您尝试运行的项目所在的帐户重新登录。
我就是这种情况。我登录了另一个 Firebase 帐户。
步骤:
`firebase logout`
`firebase login`
【讨论】:
【参考方案6】:断开公司的 *** 并再次尝试对我有用。
【讨论】:
我不敢相信 *** 是我的问题【参考方案7】:.firebaserc
中的任何拼写错误都会显示此错误。对我来说,我有一个额外的逗号,删除它解决了错误。
【讨论】:
【参考方案8】:如果你使用 Mac 或 Linux,你可以编写这个命令 export http_proxy=http://127.0.0.1:1087 来确保你的终端使用代理,这对我很有用。
【讨论】:
【参考方案9】:上述解决方案均不适合我,但删除/编辑 $HOME/.config/configstore/firebase-tools.json
中默认项目的存储值确实有效。
【讨论】:
【参考方案10】:如果其他答案都不适合您,我遇到了同样的问题,并从 Firebase 支持收到了此解决方案。 (蒂谢尔盖)
我的系统偶尔会创建名为 FIREBASE_TOKEN 的环境变量。令牌将过期,但变量不会。重新启动和注销/登录周期什么也没做。每次删除变量都有效。
Remove-Item Env:\FIREBASE_TOKEN
【讨论】:
【参考方案11】:真是太棒了,令人困惑------>
刚刚做了这些命令->
> firebase logout
>
> firebase login
【讨论】:
【参考方案12】:如果您在 CI 管道中遇到此问题,您可以在本地计算机上重新生成令牌
firebase login:ci
将生成的令牌作为环境变量,例如FIREBASE_TOKEN
并像这样运行:
firebase deploy --token "$FIREBASE_TOKEN"
【讨论】:
【参考方案13】:当我的磁盘空间不足时,我在 Linux 中遇到了这个错误,释放一些空间解决了它。
【讨论】:
以上是关于错误:无法获取 Firebase 项目项目名称。请确保该项目存在并且您的帐户有权访问它的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Cloud Function 获取 Firebase 项目名称或 ID
Firebase云消息传递FCM构建错误无法添加任务':processDebugGoogleServices'作为具有该名称的任务已存在
更改了 Firebase 项目,它给了我错误 [ API 密钥无效。请传递有效的 API 密钥。 ] 身份验证期间