【发布时间】:2019-09-14 09:27:30
【问题描述】:
我一直在尝试完全遵循 Facebook 的文档,但无法理解为什么我的代码不起作用,即使它与文档中的完全一样。我已经在我的应用上登录 Facebook,但我需要获取个人资料数据。
这是我的功能。
func fetchFacebookUser() {
let connection = GraphRequestConnection()
connection.add(GraphRequest(graphPath: "/me")) { httpResponse, result in
switch result {
case .success(let response):
print("Graph Request Succeeded: \(response)")
case .failed(let error):
print("Graph Request Failed: \(error)")
}
}
connection.start()
}
您会注意到它与文档完全相同: https://developers.facebook.com/docs/swift/graph
但我什至无法构建项目,因为我在 Xcode 中收到此错误:
Contextual closure type '(GraphRequestConnection?, Any?, Error?) -> Void' expects 3 arguments, but 2 were used in closure body
Insert ',<#arg#> '
它有“修复”按钮,但这只是破坏了整个事情,Xcode(红色警告)抱怨 switch 语句中不存在任何情况。
我到处搜索,我得到的最接近的解决方案是这个 SO 帖子:Facebook GraphRequest for Swift 5 and Facebook SDK 5
但这没有答案:(
我确定有人使用 Swift 调用了 Graph API?我在这里错过了什么?
【问题讨论】: