当前位置: 首页 > 知识库问答 >
问题:

Swift-使用Facebook验证Firebase时发生(无效的_凭据)错误

杨豪
2023-03-14

Facebook登录没问题,但Firebase无法获取Facebook帐户详细信息。

  1. 我已经检查了firebase网站中无效的_凭据意味着什么

一旦我构建,它就会显示:

登录了

登录失败。Error Domain=FirebaseAuthentication Code=-11“(错误代码:INVALID_凭据)提供的验证凭据无效。”UserInfo={details={“providerErrorInfo”:{}},NSLocalizedDescription=(错误代码:无效的\u凭据)提供了无效的身份验证凭据。}

@IBAction func loginWithFB(sender: AnyObject) {
    let facebookLogin = FBSDKLoginManager()
    //self.performSegueWithIdentifier("CurrentlyLoggedIn", sender: sender)
    facebookLogin.logInWithReadPermissions(["public_profile", "email", "user_friends"], fromViewController: self, handler: {(facebookResult, facebookError) -> Void in
        if facebookError != nil {
            print("Facebook login failed. Error \(facebookError)")
        } else if facebookResult.isCancelled {
            print("Facebook login was cancelled.")
        }else{
            print("Loged in")
            let accessToken = FBSDKAccessToken.currentAccessToken().tokenString
            
            DataService.dataService.BASE_REF.authWithOAuthProvider("facebook", token: accessToken, withCompletionBlock: {error, authData in
                if error != nil{
                    print("Login failed. \(error)")
                }else{
                    print("Logged in! \(authData)")
                }})
        }
    })

共有1个答案

刘棋
2023-03-14

您可以在项目中检查这几行代码。我认为您的完成处理程序触发了这种情况。下面的这个适用于我的项目。

  let facebookLogin = FBSDKLoginManager()

  facebookLogin.logInWithReadPermissions(["email"], fromViewController: self) { (facebookResult: FBSDKLoginManagerLoginResult!, facebookError: NSError!) in

        if facebookError == nil {
            if FBSDKAccessToken.currentAccessToken() == nil {
                print("FOUND NIL!")
            }
            else if(facebookResult.isCancelled) {
                print("Cancelled")
            }
            else {
                let accessToken = FBSDKAccessToken.currentAccessToken().tokenString
                print(accessToken)

                DataService.ds.REF_BASE.authWithOAuthProvider("facebook", token: accessToken, withCompletionBlock: {
                    error, authData in

                    if error != nil {
                        print("yes \(error)")
                    }
                    else {

                        print("Logged in! \(authData)")

                    }
                })

            }
        }

   }
 类似资料:
  • 我有一个问题与身份验证NTLM credenitals,当我使用有效的凭据,它的作品,但当我使用无效的凭据它不会失败,它的作品一样,因为它会与有效的凭据。只有当我首先输入有效凭据时才会出现这种情况。有没有办法清除凭据,或者我在这里做错了什么?这是我的代码: 我注意到一件事,如果我输入有效的文件夹,然后等待几分钟,输入无效的文件,它会像预期的那样工作。 更新 我已经更新了我的代码,这样: 添加缓存策

  • 我正在尝试在节点中使用Firebase。但是每次我重新启动服务器时,都会出现以下错误: FIREBASE警告:提供的身份验证凭据无效。这通常表示您的FirebasApp实例没有正确初始化。确保您的apiKey和数据库URL与https://console.firebase.google.com/为您的应用提供的值相匹配,或者如果您使用的是服务号,请确保它已被授权访问指定的数据库URL,并且来自正确

  • 最近,当我试图用Firebase匿名登录时,我得到以下错误 {“错误”:{“代码”:400,“消息”:“admin_only_operation”,“错误”:[{“消息”:“admin_only_operation”,“域”:“全局”,“原因”:“无效”}]}} 检查JSON消息是否正确格式化并包含有效字段(例如,确保传入正确的数据类型)。 我正在使用API提供的函数,所以我不知道我怎么可能实现错

  • 我是Spring Security的新手,我做了以下教程:https://windoctor7.github.io/spring-jwt.html 但是我修改了一些数据库中搜索用户的代码,所以,我创建了一个@bean: 1部分,拦截呼叫。 我拦截“登录”并在数据库中搜索用户是否存在: } 用户是正确的,最后一行: 我在AbstractAuthenticationProcessingFilter中遇

  • 问题内容: 非常奇怪的错误。我使用的是http://developers.facebook.com/docs/authentication/。所以我创建了对fb的请求并传递redirect_uri。我在本地主机上使用测试站点。所以如果我通过 redirect_uri = http://localhost/test_blog/index.php 它工作正常,但如果我通过 redirect_uri =

  • 我目前的问题是,当用户想要在我的应用程序(使用Firebase)上创建帐户时,会发生以下错误: 2017-07-12 21:57:05.958 GeneralMessage[8525][Firebase/Database][I-RDB038012]侦听器位于/users失败:权限被拒绝 我意识到发生错误是因为用户试图从数据库中读取,而没有登录到帐户(经过身份验证)。问题还在于,用户在测试是否使用名