Google身份认证时如何移除URL中的.firebaseapp.com后缀

隐藏Firebase Google登录URL中firebaseapp字段的解决方案
有两种常用的可行方案,操作步骤如下:
方案1:配置Firebase Auth自定义域名(官方推荐方案)
这个是Firebase官方支持的原生能力,配置后永久生效,不需要额外维护服务端逻辑:
- 打开你的Firebase项目控制台,进入「身份验证」板块,切换到「设置」标签,找到「授权域」区域,点击添加自定义域,输入你准备好的自有域名,比如
auth.yourdomain.com - 按照Firebase控制台给出的提示,到你的域名注册商后台新增一条CNAME解析记录,记录值填Firebase提供的默认auth域名
- 等域名解析生效、Firebase完成域名所有权验证后,修改你项目前端的Firebase初始化代码,把
authDomain字段的值换成你刚配置的自定义域名 - 最后登录Google Cloud控制台,进入「API和服务」→「凭据」页面,找到当前项目用的OAuth 2.0客户端ID,把新的自定义域名分别添加到「已授权的JavaScript源」和「已授权的重定向URI」列表里,否则Google登录会触发权限报错
配置完成后,所有生成的Google登录跳转URL都会使用你的自定义域名,不会再出现firebaseapp字段。
方案2:服务端反向代理(临时过渡方案)
如果暂时不想改动域名配置,也可以用反向代理实现需求:
- 在你的网站服务端新增反向代理规则,把你自有域名下的某个路径,比如
/google-auth的所有请求转发到原生带firebaseapp的Firebase Auth跳转地址 - 前端的Google登录按钮点击后,不再直接调用Firebase的登录接口跳转,改为请求你自己的这个代理路径
- 用户侧的浏览器地址栏全程只会显示你的自有域名,不会暴露
firebaseapp相关内容
注意:该方案需要你自行调试代理的请求头、参数传递、回调地址匹配,避免出现登录态校验失败的问题
内容的提问来源于stack exchange,提问作者Mahesh Babu Channa
相关产品推荐
相关产品推荐

