iOS   发布时间:2022-03-30  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – Firebase 3.2.0 – 创建用户的内部错误大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我刚刚使用Firebase 3.2.0启动了一个新项目( Swift 2.2; iOS 9; Xcode 7.3.1),并在输入无效的电子邮件和弱密码时,在我的授权/注册过程中遇到以下错误

NSError

Error Domain=FIRAuthErrorDomain Code=17999 "An internal error has occurred,print and 
inspect the error details for more information." UserInfo={error_name=ERROR_INTERNAL_ERROR,NSUnderlyingError=0x7c0549a0 {Error Domain=FIRAuthInternalErrorDomain Code=3 "(null)" 
UserInfo={FIRAuthErrorUserInfoDeserializedResponseKey=<CFBasicHash 0x7c04bd90 [0x1a701f8]>
{type = immutable Dict,count = 3,entries =>
0 : <CFString 0x7c0fb0c0 [0x1a701f8]>{Contents = "errors"} = 
<CFArray 0x7c0713a0 [0x1a701f8]>{type = immutable,count = 1,values = (
0 : <CFBasicHash 0x7c0fac00 [0x1a701f8]>{type = immutable Dict,entries =>
0 : <CFString 0x7c051080 [0x1a701f8]>{Contents = "reason"} = 
<CFString 0x7c0553f0 [0x1a701f8]>{Contents = "invalid"}
1 : <CFString 0x7c055f30 [0x1a701f8]>{Contents = "message"} = 
<CFString 0x7c061580 [0x1a701f8]>{Contents = "INVALID_EMAIL"}
2 : <CFString 0x7c054fd0 [0x1a701f8]>{Contents = "domain"} = 
<CFString 0x7c060290 [0x1a701f8]>{Contents = "global"}
}

)}
1 : <CFString 0x7c05aae0 [0x1a701f8]>{Contents = "code"} = 
<CFnumber 0x7c073010 [0x1a701f8]>{value = +400,type = kcfnumberSInt64TypE}
2 : <CFString 0x7c067e70 [0x1a701f8]>{Contents = "message"} = 
<CFString 0x7c0543a0 [0x1a701f8]>{Contents = "INVALID_EMAIL"}
}
}},NSLocalizedDescription=An internal error has occurred,print and inspect the error 
details for more information.}

……我的代码如下……

AuthViewController.swift

if let email = emailField.text where email != "",let password = passwordField.text where 
  password != "" {FIRAuth.auth()?.signInWithEmail(email,password: password) { (user,error) in
    if let error = error {
            if let errorCode = FIRAuthErrorCode(rawValue: error.codE) {
                switch errorCode {
                case .ErrorCodeNetworkError:
                    print("A network error occurred")
                case .ErrorCodeUserNotFound:
                    print("ATTEMPTinG TO CREATE USER")
                    FIRAuth.auth()?.createUserWithEmail(email,error) in
                        if let error = error {
                            if let errCode = FIRAuthErrorCode(rawValue: error.codE) {
                                switch errCode {
                                case .ErrorCodeInvalidEmail:
                                    print("invalid email")
                                case .ErrorCodeWeakpassword:
                                    self.insertErrorLabel("password is considered weak (< 6 characters). Try again")
                                default:
                                    print("Create User Error: \(error)")
                                }
                            }
                        } else {
                            // create a user in the database...
                        }
                    }
                case .ErrorCodeUserTokenExpired:

                ....

执行命中signInWithEmail()中的.ErrorCodeUserNotFound案例.然后它在createUserWithEmail()中遇到认情况.

从文档看来,似乎在createUserWithEmail()函数中有一个INVALID_EMAIL错误键可用,但是,它似乎抛出了一个内部错误,而不是遇到InvalidEmail错误情况.

三个问题:

>我是否有一个可接受的流程,signIn失败导致createUser?
>错误的实际原因是什么?
>我该如何解决

提前致谢.

解决方法

为了将来参,我针对上述错误提出了一个错误,Firebase / Google已经确认将在下一版SDK中解决.

大佬总结

以上是大佬教程为你收集整理的ios – Firebase 3.2.0 – 创建用户的内部错误全部内容,希望文章能够帮你解决ios – Firebase 3.2.0 – 创建用户的内部错误所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。