Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
FIRAuthErrorDomain Code=17014从firebase身份验证b/c删除时出错未重新登录到我的iOS应用程序(swift)?_Swift_Firebase Authentication - Fatal编程技术网

FIRAuthErrorDomain Code=17014从firebase身份验证b/c删除时出错未重新登录到我的iOS应用程序(swift)?

FIRAuthErrorDomain Code=17014从firebase身份验证b/c删除时出错未重新登录到我的iOS应用程序(swift)?,swift,firebase-authentication,Swift,Firebase Authentication,我正在构建一个应用程序,它使用firebase auth(和firestore数据库),但只使用facebook登录 用户只需使用我的应用程序登录一次,从那时起,当他们继续打开我检查的应用程序时 if Auth.auth().currentUser != nil { } 因此,如果已经有一个登录的用户,那么我不会让他们重新登录 但当他们想从应用程序中删除帐户时,会弹出错误消息: Error Domain=FIRAuthErrorDomain Code=17014 "This oper

我正在构建一个应用程序,它使用firebase auth(和firestore数据库),但只使用facebook登录

用户只需使用我的应用程序登录一次,从那时起,当他们继续打开我检查的应用程序时

 if Auth.auth().currentUser != nil
 {


 }
因此,如果已经有一个登录的用户,那么我不会让他们重新登录

但当他们想从应用程序中删除帐户时,会弹出错误消息:

Error Domain=FIRAuthErrorDomain Code=17014 "This operation is sensitive and requires recent authentication. Log in again before retrying this request." UserInfo={NSLocalizedDescription=This operation is sensitive and requires recent authentication. Log in again before retrying this request., error_name=ERROR_REQUIRES_RECENT_LOGIN}
我真的需要让用户再次登录吗?因为这意味着我必须让他们重新登录facebook,并将他们发送回fb的页面,这样他们就可以删除他们的帐户,这似乎有些过分了。是否有一个令牌我可以返回以确认登录

这可能是一个单独的问题…但当我直接从firebase控制台删除用户时,系统中没有留下任何用户,我从客户端上的应用程序中非常确定

Auth.Auth().currentUser不是nil,仍然包含我删除的用户帐户的uid。不完全清楚这是为什么


谢谢。

这是出于安全考虑。重新验证是一项敏感的操作。与您尝试更新密码(您需要输入旧密码)、更新电子邮件、更新信用卡、电子商务应用程序的发货地址等时相同。这可能不方便,但对用户的安全来说是必要的。 为了获得良好的实践,您应该强制执行这一点。但是,如果需要从服务器中删除用户,则始终可以使用Admin SDK
Admin.auth().deleteUser(uid)
API:

另外,您需要
重新加载用户,或者尝试刷新令牌
getIDToken
,以强制它检测用户的删除