Swift 获取 Facebook AccessToken

Posted

技术标签:

【中文标题】Swift 获取 Facebook AccessToken【英文标题】:Swift get Facebook AccessToken 【发布时间】:2017-03-15 06:20:18 【问题描述】:

我正在尝试获取 Facebook 访问令牌。当我打印 accessToken 时,它返回一个带有 appId 和 authenticationToken 的对象,我如何解析出令牌? 我正在使用以下代码:

let loginManager = LoginManager()
    loginManager.logIn([ .publicProfile, .userFriends, .email ], viewController: self)  loginResult in
        switch loginResult 
        case .failed(let error):
            print(error)
        case .cancelled:
            print("User cancelled login.")
        case .success(let grantedPermissions, let declinedPermissions, let accessToken):

            print("accessToken: " + String(describing: accessToken))
            break

        
    

【问题讨论】:

***.com/a/42266558/5461400 试试这个 可以直接获取访问令牌FBSDKAccessToken.current() 【参考方案1】:

您尝试解析的令牌是一个结构

实际标记是:

accessToken.authenticationToken

你的代码应该是这样的:

let loginManager = LoginManager()
loginManager.logIn([ .publicProfile, .userFriends, .email ], viewController: self)  loginResult in
    switch loginResult 
    case .failed(let error):
        print(error)
    case .cancelled:
        print("User cancelled login.")
    case .success(let grantedPermissions, let declinedPermissions, let accessToken):

        print("accessToken: " +  accessToken.authenticationToken)
        break

    

【讨论】:

以上是关于Swift 获取 Facebook AccessToken的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Swift 中从 Facebook 获取用户名

我如何从 facebook 公开资料 Facebook IOS Swift SDK 中获取性别

Swift - Firebase 在 Firestore 中获取 Facebook 好友 UID

无法在 Swift 中从 Facebook 获取电子邮件

使用 Swift 和 Parse 获取 Facebook UserData 时出现致命错误

使用 PFFacebookUtils 和 Swift 和 iOS 9 获取 Facebook 帐户详细信息