【发布时间】:2017-03-04 02:31:03
【问题描述】:
我正在使用图形 API 从 Facebook 登录返回我的姓名和电子邮件。这是我使用的代码 - 名称恢复正常,但电子邮件为零:
func getUserInfo() {
let params = ["fields" : "email, name"]
let graphRequest = GraphRequest(graphPath: "me", parameters: params)
graphRequest.start {
(urlResponse, requestResult) in
switch requestResult {
case .failed(let error):
print("error in graph request:", error)
break
case .success(let graphResponse):
if let responseDictionary = graphResponse.dictionaryValue {
print(responseDictionary)
if let name = responseDictionary["name"] {
self.nameLabel.text = "Logged in as: \n\(name)"
}
if let email = responseDictionary["email"] {
self.emailLabel.text = "Your email is: \n\(email)"
} else {
self.emailLabel.text = "Your email is: "
}
print(responseDictionary["name"])
print(responseDictionary["email"])
}
}
}
}
这是打印到我的控制台的内容:
["id": 1653899307960705, "name": *my name removed for privacy*]
Optional(*my name removed for privacy*)
nil
我不确定我的代码是错误的还是只是一个错误 - 我将电子邮件和姓名都指定为我的参数,但您可以看到只有姓名返回。有人知道为什么会这样吗?
【问题讨论】:
-
您是否向用户请求了电子邮件权限?
标签: ios swift facebook facebook-graph-api