localhost下Google Auth遇Firebase错误auth/unauthorized-domain求助
以下是几个针对性的排查和解决方向:
核对Firebase配置准确性
确认项目中初始化Firebase时的authDomain字段和控制台完全一致,同时检查是否关联了正确的Firebase项目——不少人会误操作关联其他项目,导致授权域名配置不匹配。可以在控制台打印getAuth()的配置信息,验证authDomain是否正确。检查端口号是否添加到授权列表
如果你的本地服务使用了非默认端口(如localhost:3000、localhost:8080),必须在Firebase控制台的「Auth > 登录方法 > 授权域名」中精确添加带端口的域名,仅添加localhost无法覆盖带端口的访问场景。清除浏览器缓存/使用无痕模式测试
浏览器可能缓存了旧的Firebase配置,导致授权校验时读取的是过期数据。切换到无痕模式重新测试,或者清除当前站点的缓存和Cookie后重试。修正代码中的错误信息捕获逻辑
你的代码中error.body并非Firebase Auth错误对象的标准属性,建议改为捕获error.code和error.message,以便更准确排查问题:
const signInWithGoogle = () => { const provider = new GoogleAuthProvider() signInWithPopup(getAuth(), provider) .then((result) => { console.log(result.user) router.push("/") // 登录成功后建议跳转到主页而非登录页 }) .catch((error) => { console.log(error) alert(error.code + ": " + error.message) }) }
内容的提问来源于stack exchange,提问作者GingerMan
相关产品推荐
相关产品推荐

