Swift: 提供的 Facebook 会话令牌已过期或无效
Swift: The supplied Facebook session token is expired or invalid
我正在尝试将 FacebookLogin 与 Parse 一起使用,但是我收到一个错误,
The supplied Facebook session token is expired or invalid
每次我尝试使用下面的代码登录时。
import Foundation
import UIKit
class LoginViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let permissions = ["public_profile", "email"]
PFFacebookUtils.logInWithPermissions(permissions) {
(user, error) in
if (user == nil) {
if (error == nil) {
println("User cancelled FB login")
}else{
println("FB login error: \(error)")
}
} else if user.isNew {
println("User signed up and logged in with Facebook")
} else {
println("User logged in via Facebook")
}
}
}
我曾经遇到过这个错误,不得不在 Objective-C
中的登录调用之前放置这一行
[FBSession.activeSession closeAndClearTokenInformation];
我似乎在 Parse SDK 中找不到 swift 等价物,而 Facebook SDK 仍然只在 Objective-C 中。
您可能必须将此行添加到 Objective-C 文件,然后从您的 swift 文件调用它。查看这个问题,了解如何做到这一点
How to call Objective-C code from Swift
我正在尝试将 FacebookLogin 与 Parse 一起使用,但是我收到一个错误,
The supplied Facebook session token is expired or invalid
每次我尝试使用下面的代码登录时。
import Foundation
import UIKit
class LoginViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view, typically from a nib.
let permissions = ["public_profile", "email"]
PFFacebookUtils.logInWithPermissions(permissions) {
(user, error) in
if (user == nil) {
if (error == nil) {
println("User cancelled FB login")
}else{
println("FB login error: \(error)")
}
} else if user.isNew {
println("User signed up and logged in with Facebook")
} else {
println("User logged in via Facebook")
}
}
}
我曾经遇到过这个错误,不得不在 Objective-C
中的登录调用之前放置这一行[FBSession.activeSession closeAndClearTokenInformation];
我似乎在 Parse SDK 中找不到 swift 等价物,而 Facebook SDK 仍然只在 Objective-C 中。
您可能必须将此行添加到 Objective-C 文件,然后从您的 swift 文件调用它。查看这个问题,了解如何做到这一点
How to call Objective-C code from Swift