如何使用 Facebook Graph API 获取 city/state/country 用户
How to get city/state/country of user using Facebook Graph API
我正在尝试使用 FBSDKGraphRequest 填充文本字段。 First/last 姓名和电子邮件不是问题,但说到位置,我似乎只能得到 'Austin, Texas'。我似乎无法将各个值取出并放入 textFields 中。
在下面的代码中,城市文本字段使用 'Austin, Texas' 填充。我怎么才能得到城市 'Austin' 然后在状态文本字段中得到 'Texas'?
FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "email, first_name, last_name, location"]).start(completionHandler: { (connection, result, error) -> Void in
if let error = error {
self.alertTheUser(title: "Error", message: error.localizedDescription)
print(error)
}else{
let fbDetails = result as! NSDictionary
let location : NSDictionary! = fbDetails.value(forKey: "location") as! NSDictionary
print(fbDetails)
self.registerEmailField.text = fbDetails.value(forKey: "email") as? String
self.registerFirstNameField.text = fbDetails.value(forKey: "first_name") as? String
self.registerLastNameField.text = fbDetails.value(forKey: "last_name") as? String
self.registerCityField.text = location.value(forKey: "name") as? String
}
})
忘了把这个清除掉。
FBSDKGraphRequest 中的位置应该如下所示。
FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "email, first_name, last_name, location{location}"]).start(completionHandler: { (connection, result, error) -> Void in
然后您可以分别访问各个位置值。
let locationContents: NSDictionary! = location.value(forKey: "location") as! NSDictionary
self.registerCityField.text = locationContents.value(forKey: "city") as? String
self.registerStateField.text = locationContents.value(forKey: "state") as? String
self.registerCountryField.text = locationContents.value(forKey: "country") as? String
我正在尝试使用 FBSDKGraphRequest 填充文本字段。 First/last 姓名和电子邮件不是问题,但说到位置,我似乎只能得到 'Austin, Texas'。我似乎无法将各个值取出并放入 textFields 中。
在下面的代码中,城市文本字段使用 'Austin, Texas' 填充。我怎么才能得到城市 'Austin' 然后在状态文本字段中得到 'Texas'?
FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "email, first_name, last_name, location"]).start(completionHandler: { (connection, result, error) -> Void in
if let error = error {
self.alertTheUser(title: "Error", message: error.localizedDescription)
print(error)
}else{
let fbDetails = result as! NSDictionary
let location : NSDictionary! = fbDetails.value(forKey: "location") as! NSDictionary
print(fbDetails)
self.registerEmailField.text = fbDetails.value(forKey: "email") as? String
self.registerFirstNameField.text = fbDetails.value(forKey: "first_name") as? String
self.registerLastNameField.text = fbDetails.value(forKey: "last_name") as? String
self.registerCityField.text = location.value(forKey: "name") as? String
}
})
忘了把这个清除掉。
FBSDKGraphRequest 中的位置应该如下所示。
FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "email, first_name, last_name, location{location}"]).start(completionHandler: { (connection, result, error) -> Void in
然后您可以分别访问各个位置值。
let locationContents: NSDictionary! = location.value(forKey: "location") as! NSDictionary
self.registerCityField.text = locationContents.value(forKey: "city") as? String
self.registerStateField.text = locationContents.value(forKey: "state") as? String
self.registerCountryField.text = locationContents.value(forKey: "country") as? String