无法快速从 json 数据中检索 facebook 好友列表
Posted
技术标签:
【中文标题】无法快速从 json 数据中检索 facebook 好友列表【英文标题】:Trouble retrieving list of facebook friends from json data in swift 【发布时间】:2015-04-16 19:50:57 【问题描述】:我在我的 Swift ios 应用程序中使用 FBSDK,目前我正在尝试检索 也使用我的应用程序的朋友列表。我有两三个人应该出现,但每当我搜索时朋友的 graphrequest 结果返回 nil..
let graphRequest : FBSDKGraphRequest = FBSDKGraphRequest(graphpath: "me", parameters: nil)
graphRequest.startWithCompletionHandler( (connection, result:AnyObject!, error) -> Void in
if ((error) != nil)
// Process error
println("Error: \(error)")
else
//get Facebook ID
let faceBookID: NSString = result.valueForKey("id") as NSString
//get username
let userName : NSString = result.valueForKey("name") as NSString
//get facebook friends who use app
let friendlist: AnyObject = result.valueForKey("friends") as AnyObject
我拥有“email”、“user_friends”和“public_profile”权限,应该足以检索这些信息。关于我做错了什么的任何想法?这让我很头疼,因为我的朋友做一个 android 版本已经成功地让他工作了..
【问题讨论】:
【参考方案1】:我的问题是我从来没有在我的 facebook 图表请求中实际请求过朋友列表...
替换FBSDKGraphRequest(graphPath: "me", parameters: nil)
后
FBSDKGraphRequest(graphPath: "me?fields=id,name,friends", parameters: nil)
我能够检索到朋友列表,因为响应实际上包含了相关信息。对我来说是一个非常微不足道的错误。
【讨论】:
【参考方案2】:在 v2.0 的 Graph API 中,您必须请求 user_friends 权限 来自每个用户。 user_friends 不再默认包含在每个 登录。每个用户必须授予 user_friends 权限才能 出现在对 /me/friends 的回复中。
请看这里:https://developers.facebook.com/bugs/1502515636638396/
【讨论】:
感谢您的回复! Graph API 将允许您请求也使用您的应用程序的朋友 并已授予该应用程序相同的基本权限“user_friends”的列表。我的问题是我实际上从未在图形路径值中请求过这个朋友列表。以上是关于无法快速从 json 数据中检索 facebook 好友列表的主要内容,如果未能解决你的问题,请参考以下文章
Facebook iOS 上传视频“无法从访问令牌中检索会话密钥。”
从 JSON 检索数据但无法从 JSONobject 访问 Arraylist