Firebase认证报错auth/api-key-not-valid,API密钥正确仍异常求助
Firebase邮箱密码登录出现
auth/api-key-not-valid错误排查 遇到错误:Firebase: Error (auth/api-key-not-valid.-please-pass-a-valid-api-key)

确认API密钥与Firebase凭据配置一致,但仍出现该错误,以下是可能的排查方向:
用户提供的代码
登录处理函数:
const handleLogin=(e)=>{ e.preventDefault(); signInWithEmailAndPassword(auth, email, password) .then((userCredential) => { console.log("signed in") const user = userCredential.user; navitage("/") console.log(user); }) .catch((error) => { const errorCode = error.code; const errorMessage = error.message; console.log(errorCode);//line 24 console.log(error);//line 25 console.log(errorMessage); setError(true); }); }
登录表单组件:
<form onSubmit={handleLogin}> <h1>Login</h1> <input type="email" placeholder="email" onChange={(e)=>setEmail(e.target.value)}/> <input type="password" placeholder="password" onChange={(e)=>setPassword(e.target.value)}/> <button >Login</button> {error && <span>Wrong Password or Email. Try Again!</span>} </form> </div>
排查步骤
验证Firebase初始化配置
确保初始化代码中的apiKey是完整复制的,无空格、换行或截断。示例初始化代码:import { initializeApp } from "firebase/app"; import { getAuth } from "firebase/auth"; const firebaseConfig = { apiKey: "你的完整API密钥", authDomain: "你的项目域名", projectId: "你的项目ID", // 其他必填配置项 }; const app = initializeApp(firebaseConfig); export const auth = getAuth(app);若使用环境变量存储API密钥,确认
.env文件中的键名正确(如React中需以REACT_APP_开头),且变量值无多余引号。确认
auth实例有效性
检查signInWithEmailAndPassword使用的auth是否是从正确初始化的Firebase App获取的实例,避免传入未初始化或错误的对象。检查API密钥权限
登录Firebase控制台,进入项目「设置」→「服务帐户」→「API密钥」:- 确认该API密钥未被禁用
- 查看「API限制」,确保已启用「Firebase Authentication API」及相关身份验证类API
清除缓存并重启服务
清除浏览器缓存,重启开发服务器,避免旧配置缓存导致的问题。修正代码拼写错误
注意到代码中navitage("/")存在拼写错误,应为navigate("/"),虽不直接引发API密钥错误,但这类问题可能干扰调试,建议修正。
内容的提问来源于stack exchange,提问作者smdmoz
相关产品推荐
相关产品推荐

