You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 09:25:09