我请求 Facebook 登录,并在以下几行中收到 4 个“Type 'Any' has no subscript Members” 问题:
PFUser.current()?["name"] = result["name"]
PFUser.current()?["email"] = result["email"]
PFUser.current()?["gender"] = result["gender"]
let userId = result["id"] as! String
这是代码:
override func viewDidLoad() {
let graphRequest : FBSDKGraphRequest = FBSDKGraphRequest(graphPath: "me", parameters: ["fields":"id, name, gender, email"])
graphRequest.start { (connection, object, error) -> Void in
if error != nil {
print("Error while making Graph request to Facebook")
} else {
if let result = object {
PFUser.current()?["name"] = result["name"]
PFUser.current()?["email"] = result["email"]
PFUser.current()?["gender"] = result["gender"]
PFUser.current()?.saveInBackground()
let userId = result["id"] as! String
self.saveUserImageInBackground(userId)
}
}
}
}
应用程序无法启动。
最佳答案
尝试以下操作:
override func viewDidLoad() {
if((FBSDKAccessToken.current()) != nil){
FBSDKGraphRequest(graphPath: "me", parameters: ["fields":"id, name, gender, email"]).start(completionHandler: { (connection, result, error) -> Void in
if (error == nil){
let data:[String:AnyObject] = result as! [String : AnyObject]
PFUser.current()?["name"]= data["first_name"] as? NSString
PFUser.current()?["email"] = data["email"] as? NSString
}
关于Swift 3 - FBSDKGraphRequest - 类型 'Any' 没有下标成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42886161/