教程:利用谷歌服务账号秘钥 授权给firebase 成功登录并部署网站
好久没写文章了,今天心血来潮,突然想写一篇firebase cli login授权登录问题的文章。至于什么是firebase,我就不过多介绍了。
相信很多站长朋友在使用firebase部署静态网站的过程中,或多或少都会被firebase login这个问题搞破脑袋,谷歌的这个操作简直就是反人类。
我就简单的说一下:
1.安装Firebase命令行工具
1 |
|
2.登录到您的Firebase帐户
1 |
|
3.proxifier开启代理全部流量,之后跳转到浏览器,登录自己的账户授权给firebase cli
4.成功授权后,再跳转到localhost:9005/xxxxxx,直接给你一个错误网页,导致回调失败,而无法登陆
5.重新登录到您的Firebase帐户,使用无浏览器命令
1 |
|
6.在cmd窗口中,会给出一个url,我们把这个url复制到浏览器,再次授权,之后会得到一段长数字,我们把这段数字复制到cmd中,然后又出现红色错误
7.此方法试了10遍以上,只有一次成功过,至于原因我也搞不懂
8.成功之后,使用firebase logout退出,再次尝试登陆,依然如之前一样,搞不懂谷歌的这个骚操作,哈哈~
今天我就来解决这个问题
有两种方法,一种是使用谷歌服务账号秘钥,另一种是使用token,推荐使用前者
谷歌服务账号秘钥步骤如下:
a.官网地址:https://firebase.google.com/
b.转到控制台,选择您的项目,点进去后,在项目概览旁边有个齿轮,就是设置按钮,选择项目设置,服务账号,创建服务账号,生成新的私密
c.把该json文件下载到本地,比如我放在了
1 |
|
d.打开cmd,cd到你要部署到firebase的目录
e.设置临时环境变量,若要永久的,可以在系统变量里面添加
1 |
|
f.输入下面命令,测试一下
1 |
|
g.出现项目列表,就说明连接成功了,之后就可以部署了
利用token步骤图如下:
a.无浏览器登录:
1 |
|
b.复制url到浏览器,授权后会得到一串数字
1 |
|
c.使用下面的命令,验证成功即可
1 |
|
结束语录:
相比较这两者,个人强烈建议使用服务账号秘钥,而谷歌也会在不久之后移除token方式认证。
可以参考文档:https://cloud.google.com/docs/authentication/getting-started
https://firebase.google.com/docs/cli?authuser=0&hl=zh-cn#sign-in-test-cli
https://cloud.google.com/docs/authentication/application-default-credentials?hl=zh-cn