firebase-tools "Error: certificate has expired"
firebase-tools "Error: certificate has expired"
今天早上我尝试将我的 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
我找到了解决方案。首先,这样做:
npm i -g firebase-tools@latest
看来我使用的是过时版本的 Firebase CLI。发生此错误是因为旧版本的 CLI 链接到不再运行的旧版 Firebase 服务。升级到最新的 CLI 版本是唯一的解决方案。
那么您需要使用新命令而不是已弃用的命令。例如:
firebase projects:list //instead of firebase list
您可能需要:
sudo npm i -g firebase-tools@latest --force
运行 npm install --save firebase-functions@latest
并确保添加
"engines": {
"node": "8"
}
在你的package.json
有同样的问题。
将您的本地时钟更改为 2020 年 1 月 4 日之前
如果更新 CLI 后问题仍然存在,请尝试从 firebase 注销并重新登录
firebase logout
firebase login
我更新到最新了,注销+登录。
关闭终端并打开一个新终端后才开始工作
我安装了旧版本的 firebase
,它不允许新的 CLI 正确地 运行。我不得不手动删除旧版本,重新安装新版本,然后一切正常。这是我的做法:
- 运行
which firebase
在您的终端中查看您的 firebase npm 包的保存位置。
- 删除那个文件夹。
- 运行
npm i -g firebase-tools@latest
- 运行
firebase init
并且您应该重新 运行ning 并且没有任何错误。
今天早上我尝试将我的 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
我找到了解决方案。首先,这样做:
npm i -g firebase-tools@latest
看来我使用的是过时版本的 Firebase CLI。发生此错误是因为旧版本的 CLI 链接到不再运行的旧版 Firebase 服务。升级到最新的 CLI 版本是唯一的解决方案。
那么您需要使用新命令而不是已弃用的命令。例如:
firebase projects:list //instead of firebase list
您可能需要:
sudo npm i -g firebase-tools@latest --force
运行 npm install --save firebase-functions@latest
并确保添加
"engines": {
"node": "8"
}
在你的package.json
有同样的问题。 将您的本地时钟更改为 2020 年 1 月 4 日之前
如果更新 CLI 后问题仍然存在,请尝试从 firebase 注销并重新登录
firebase logout
firebase login
我更新到最新了,注销+登录。 关闭终端并打开一个新终端后才开始工作
我安装了旧版本的 firebase
,它不允许新的 CLI 正确地 运行。我不得不手动删除旧版本,重新安装新版本,然后一切正常。这是我的做法:
- 运行
which firebase
在您的终端中查看您的 firebase npm 包的保存位置。 - 删除那个文件夹。
- 运行
npm i -g firebase-tools@latest
- 运行
firebase init
并且您应该重新 运行ning 并且没有任何错误。