firebase-tools“错误:证书已过期”


23

今天早上,我尝试将我的react项目部署到Firebase托管,但是收到以下错误消息:

Error: Server Error. certificate has expired

然后,我尝试执行firebase list命令以查看项目列表,但再次收到相同的错误!我在其他项目上尝试了相同的结果。因此,我相信此错误与特定项目无关,并且与无关firebase-tools。这是错误日志:

[debug] 
[debug] [2020-01-07T03:37:57.789Z] > command requires scopes: ["email","openid","https://www.googleapis.com/auth/cloudplatformprojects.readonly","https://www.googleapis.com/auth/firebase","https://www.googleapis.com/auth/cloud-platform"]
[debug] [2020-01-07T03:37:57.789Z] > authorizing via signed-in user
[debug] [2020-01-07T03:37:57.792Z] >>> HTTP REQUEST GET https://admin.firebase.com/v1/projects  

[debug] [2020-01-07T03:37:58.566Z] Error: certificate has expired
    at TLSSocket.<anonymous> (_tls_wrap.js:1116:38)
    at emitNone (events.js:106:13)
    at TLSSocket.emit (events.js:208:7)
    at TLSSocket._finishInit (_tls_wrap.js:643:8)
    at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:473:38)
[error] 
[error] Error: Server Error. certificate has expired

1
如果您在运行Firebase CLI与项目进行交互时遇到问题,请直接联系Firebase支持。 support.google.com/firebase/contact/support
道格·史蒂文森

Answers:


27

我找到了解决方案。首先,执行以下操作:

npm i -g firebase-tools@latest

看来我使用的是Firebase CLI的过时版本。发生此错误的原因是,较旧的CLI版本已链接到不再运行的旧版Firebase服务。唯一的解决方案是升级到最新的CLI版本。

然后,您需要使用新命令而不是不推荐使用的命令。例如:

firebase projects:list  //instead of firebase list

1
npm i -g firebase-tools @ latest-尝试过,但仍然是相同的错误。
iMDroid

3
必须在Mac中重新打开终端。
Muthukumar,


1

有同样的问题。将本地时钟更改为2020年1月4日之前


@ jan-kremen,“更改本地时钟”是什么意思?
卢卡斯


1

firebase安装的是旧版本,不允许新的CLI正确运行。我不得不手动删除旧版本,重新安装新版本,然后一切正常。这是我的做法:

  1. which firebase在您的终端中运行,查看Firebase npm软件包的保存位置。
  2. 删除该文件夹。
  3. npm i -g firebase-tools@latest
  4. 运行firebase init,您应该重新启动并且没有任何错误。

0

运行npm install --save firebase-functions@latest并确保添加

"engines": {
  "node": "8" 
}

在你的package.json中


0

如果更新CLI后问题仍然存在,请尝试从Firebase注销并重新登录

firebase logout
firebase login
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.