我对swift有点新意,可以使用一些帮助。我成功运行了一个Facebook SDK图形请求,并将它的一部分保存到Parse上的数据库中。问题是,如果用户不允许读取他们的电子邮件,我的应用程序崩溃,因为该对象为空。这是我的代码:
FBSDKGraphRequest(graphPath: "me",
parameters: ["fields": "id, name,friends, first_name, last_name, picture.type(large), email, gender,taggable_friends"])
.start(completionHandler: { (connection, result , error) -> Void in
let data:[String:AnyObject] = result as! [String : AnyObject]
print(data)
PFUser.current()!["fb_id"] = data["id"] as? String
PFUser.current()!["name"] = data["name"] as? String
PFUser.current()!["email"] = data["email"] as! String
PFUser.current()!["gender"] = data["gender"] as! String
PFUser.current()?.saveInBackground()
有人可以帮我编辑电子邮件行,说明是否为空,不要试图强行保存吗?
答案 0 :(得分:0)
一种方法是在Swift中安全地展开可选项的标准方法:
if let email = data["email"] as? String {
PFUser.current()!["email"] = email
}