调用signInWithEmailAndPassword遇Firebase auth/network-request-failed错误求助
排查与解决建议
1. 修复参数传递错误
你的登录处理函数需要接收email和password参数,但当前TouchableOpacity的onPress直接绑定函数时没有传递参数,导致函数内的参数为undefined,这会引发Firebase请求异常,甚至被误判为网络错误。修改调用代码:
<TouchableOpacity style={styles.signIn} onPress={() => signInWithEmailAndPasswordPress(email, password)} > <Text style={styles.buttonFont}>Sign In</Text> </TouchableOpacity>
2. 打印完整错误信息定位真实原因
在catch块中输出完整错误详情,避免仅依赖表面的网络错误提示:
catch (error) { console.log("错误代码:", error.code); console.log("错误描述:", error.message); console.log("完整错误对象:", error); }
部分场景下,参数错误、账号状态异常(如邮箱未验证、账号被禁用)等问题可能被包装为网络错误抛出。
3. 检查Firebase Auth基础配置
- 确认Firebase控制台中邮箱/密码登录方式已开启;
- 核对项目的Firebase配置(authDomain、apiKey等)是否正确,尤其是authDomain需与当前运行环境匹配。
4. 排查Auth请求的网络限制
Firebase Auth请求的域名是identitytoolkit.googleapis.com,即使其他Firebase请求正常,该域名仍可能被防火墙、代理或网络策略拦截:
- 切换网络环境(如手机流量、其他WiFi)测试;
- 检查是否有本地安全工具拦截了该域名的HTTPS请求。
5. 更新Firebase SDK版本
使用旧版Firebase Auth SDK可能存在已知的网络请求兼容问题,更新至最新稳定版后重试。
内容的提问来源于stack exchange,提问作者David Henry
相关产品推荐
相关产品推荐

