Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/20.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
Ios Swift Facebook登录:提供的访问令牌无效或已过期_Ios_Swift_Facebook_Telerik_Facebook Login - Fatal编程技术网

Ios Swift Facebook登录:提供的访问令牌无效或已过期

Ios Swift Facebook登录:提供的访问令牌无效或已过期,ios,swift,facebook,telerik,facebook-login,Ios,Swift,Facebook,Telerik,Facebook Login,我正在尝试使用facebook sdk将用户注册/登录到我的IOS应用程序。 当我按下登录按钮时,safari会打开一个Facebook登录屏幕。输入正确的凭据后,我将返回应用程序,登录按钮更改为注销按钮,我可以检索用户信息(姓名和电子邮件地址)。问题是,当我尝试将其传递到后端服务(telerik/everlive)时,它返回以下错误: Failed to log in the user: The provided access token is invalid or has expired

我正在尝试使用facebook sdk将用户注册/登录到我的IOS应用程序。 当我按下登录按钮时,safari会打开一个Facebook登录屏幕。输入正确的凭据后,我将返回应用程序,登录按钮更改为注销按钮,我可以检索用户信息(姓名和电子邮件地址)。问题是,当我尝试将其传递到后端服务(telerik/everlive)时,它返回以下错误:

Failed to log in the user: The provided access token is invalid or has expired
以下所有代码均来自myLoginViewController

override func viewDidLoad() {
     super.viewDidLoad()
     if (FBSDKAccessToken.currentAccessToken() != nil)
    {
        print("User is already logged in")
        // User is already logged in, do work such as go to next view controller.
    }
    else
    {
        let loginView : FBSDKLoginButton = FBSDKLoginButton()
        self.view.addSubview(loginView)
        loginView.center = self.view.center

        loginView.readPermissions = ["public_profile", "email"]
        loginView.delegate = self
    }
}
//

//

func registerUserFromFacebook(){
    print("1")

    print(fbToken.tokenString)
    EVUser.loginWithFacebook(fbToken.tokenString , block: { (user:EVUser!, error:NSError!) -> Void in
        if (error == nil) {
            user.username = String("\(self.facebookFirstName)\(self.facebookLastName)")

        } else {
            //This is the error
            print("Failed to log in the user: " + error.domain)
        }
    })
}

我正在努力解决这个问题,telerik和Facebook SDK的所有文档都在目标c中,我不知道这与swift相反。

当然这不是Facebook的问题,我无法100%确定问题所在。我在登录后和发送到telerik之前检查了字符串令牌,它们都是相同的@RohitkPay you logging out user anywhere?尝试重置模拟器,然后重试。我碰巧在那里储存了一些代币,这会使其他代币失效@CatalinaT。在ipad上进行测试。我卸载了应用程序,然后重新安装,它工作了。太棒了!不客气:)
func registerUserFromFacebook(){
    print("1")

    print(fbToken.tokenString)
    EVUser.loginWithFacebook(fbToken.tokenString , block: { (user:EVUser!, error:NSError!) -> Void in
        if (error == nil) {
            user.username = String("\(self.facebookFirstName)\(self.facebookLastName)")

        } else {
            //This is the error
            print("Failed to log in the user: " + error.domain)
        }
    })
}