Firebase Auth错误Code=17999(CONFIGURATION_NOT_FOUND)修复咨询
问题描述
代码实现
以下是用于注册并保存用户数据的iOS代码:
@objc func finishRegistering () { guard let password = passwordTextField.text, isValidPassword(password) else { presentCustomAlert(withTitle: LocalizedString.invalidPassword.translated, message: LocalizedString.passwordRules.translated) return } Auth.auth().createUser(withEmail: email, password: password ) { [weak self] authResult, error in if let error = error { print(error) return } guard let strongSelf = self, let authResult = authResult else { return } strongSelf.saveUserDetails(firstname: strongSelf.firstName, lastname: strongSelf.lastName, userID: authResult.user.uid) strongSelf.navigateToHomePage() } } // MARK: - Saving user details to the database . func saveUserDetails (firstname: String , lastname: String , userID: String ) { let databaseReference = Database.database().reference() let userReference = databaseReference.child("users").child(userID) let userdetails = ["firstName": firstname , "lastName": lastname ] userReference.setValue(userdetails) { error, _ in if let error = error { print("Erro saving user details " , error ) } else { print("User details saved successfully") } } }
运行错误
运行时触发以下错误:
Error Domain=FIRAuthErrorDomain Code=17999 "An internal error has occurred, print and inspect the error details for more information." UserInfo={FIRAuthErrorUserInfoNameKey=ERROR_INTERNAL_ERROR, NSLocalizedDescription=An internal error has occurred, print and inspect the error details for more information., NSUnderlyingError=0x600000d8d9b0 {Error Domain=FIRAuthInternalErrorDomain Code=3 "(null)" UserInfo={NSUnderlyingError=0x600000dbfde0 {Error Domain=com.google.HTTPStatus Code=400 "(null)" UserInfo={data={length = 220, bytes = 0x7b0a2020 22657272 6f72223a 207b0a20 ... 5d0a2020 7d0a7d0a }, data_content_type=application/json; charset=UTF-8}}, FIRAuthErrorUserInfoDeserializedResponseKey={ code = 400; errors = ( { domain = global; message = "CONFIGURATION_NOT_FOUND"; reason = invalid; } ); message = "CONFIGURATION_NOT_FOUND"; }}}}
已尝试的操作:
- 更新Firebase iOS SDK至最新版本
- 重新下载并添加GoogleService-Info.plist
- 清理构建文件夹及包
解决方案
碰到CONFIGURATION_NOT_FOUND这个错误,试试下面这些排查修复方向:
1. 核对Firebase项目的iOS应用配置
- 登录Firebase控制台,进入项目设置→应用,检查iOS应用的Bundle ID和Xcode工程里的完全一致,大小写、特殊字符都不能出错。
- 确认Firebase中填写的Team ID和Xcode里的匹配,自动签名场景下Xcode会自动同步,手动签名则需要手动核对。
2. 检查GoogleService-Info.plist的关键字段
- 打开下载的plist文件,确认以下核心字段的正确性:
CLIENT_ID、REVERSED_CLIENT_ID:对应Firebase控制台中的OAuth客户端IDPROJECT_ID:和你的Firebase项目ID完全匹配FIREBASE_APP_ID:和控制台显示的应用ID一致
- 还要确保该plist文件已添加到Xcode的目标应用中——不是仅拖入工程,需在Target的Build Phases→Copy Bundle Resources列表中能看到它。
3. 确认Firebase Auth服务已启用
- 进入Firebase控制台的Authentication→登录方法,检查电子邮件/密码登录方式是否已启用。未启用的话开启后重新测试。
4. 检查Xcode的签名与权限配置
- 查看Xcode中应用的Signing & Capabilities:
- 勾选自动签名,且Team选择正确
- 添加
Internet Access(Outgoing)权限,保证应用能正常访问Firebase服务器
- 若为iOS 14+版本,检查
Info.plist中的NSAppTransportSecurity配置,确保未阻止HTTPS请求(Firebase要求HTTPS,默认ATS规则允许,但自定义配置时需注意)。
5. 重置Firebase应用配置
- 在Firebase控制台的项目设置中删除当前iOS应用,重新创建一个新的iOS应用,下载新的
GoogleService-Info.plist替换工程中的旧文件。 - 执行
pod deintegrate清理Pod依赖,再运行pod install重新安装依赖,之后重建工程。
6. 排查网络环境
- 确保测试设备能正常访问外网,未被防火墙或代理拦截Firebase相关域名(如
firebase.google.com、*.firebaseio.com等)。可尝试切换网络(比如从公司内网切换到手机热点)测试。
内容的提问来源于stack exchange,提问作者Michael Drammond
相关产品推荐
相关产品推荐

