如何使用Swift 3.0检查Facebook Access Token是否有效?

时间:2017-07-12 23:50:32

标签: ios facebook validation

我正在开发包含Facebook登录的iOS应用程序,我已经完成了登录按钮,但是通过Facebook测试我看到了一个测试以确保令牌有效性,如果无效,请让用户登录再次,我想知道如何使用Swift 3.0检查访问令牌是有效还是过期。

2 个答案:

答案 0 :(得分:0)

我不确定你是否需要这样的东西,但几个月前我有义务在我的最终项目中实施一些社交登录。有一个我用过的代码,我希望你能够在某种程度上使用它(有检查是auth令牌有效),如果我得到你需要它将帮助你。问候。 :)

    loginButton.isEnabled = false
    if let accessToken = AccessToken.current {
        tryToLoginWithFB(fbToken: accessToken.authenticationToken)
    }   


    let fbLoginManager : FBSDKLoginManager = FBSDKLoginManager()

    fbLoginManager.logIn(withReadPermissions: ["email"], from: self) { (result, error) in
        if (error == nil){
            let fbloginresult : FBSDKLoginManagerLoginResult = result!
            if fbloginresult.grantedPermissions != nil {
                if(fbloginresult.grantedPermissions.contains("email"))
                {
                    self.tryToLoginWithFB(fbToken: AccessToken.current!.authenticationToken)
                }
            }
        }
        else {

        }
    }

哦,我差点忘了 - 我必须导入FacebookLogin,FacebookCore和FBSDKLoginKit和tryToLoginWithFB是我自己的方法,它使用我的(或我的朋友)应用程序模块,现在我不确定是谁写了那部分服务器 - 侧面应用程序但在这种情况下并不重要。 :) Ofc那段代码来自客户端iOS应用程序。

答案 1 :(得分:0)

我修好了。我在viewDidLoad中使用了图形请求,如果令牌无效,它会要求用户重新进行身份验证。