ios - 获取所有喜欢的页面按一般喜欢排序

标签 ios facebook swift facebook-graph-api facebook-fql

我正在尝试让用户喜欢的页面按每个页面的喜欢数量降序排列...... 使用 Graph API 很难得到这个,因为我必须像这样获取请求:

let request = FBSDKGraphRequest(graphPath: "me/likes" parameters: nil)

并在内部递归调用它,因为该请求将对响应进行分页。在我得到所有东西后,我必须在本地对其进行排序,这就是我得到它的方式 😬
恕我直言,这有点矫枉过正所以我研究了一种实现相同目的但使用FQL的方法,这是查询:

SELECT name, fan_count FROM page WHERE  page_id IN (SELECT page_id FROM page_fan WHERE uid = me())  ORDER BY fan_count DESC

起初我对此很满意,但经过一些测试后,我的 friend 告诉我他看不到梅西在他的名单上。 所以我想知道不是所有页面都显示在这个FQL查询结果中的原因是什么?

最佳答案

您不必为此单独提出请求。

Graph API 有一个称为“字段扩展”的功能,它允许您一次指定您想要来自多个“级别”的数据。 https://developers.facebook.com/docs/graph-api/using-graph-api/v2.4#fieldexpansion

如此要求

/me/likes?fields=id,name,likes

将为您提供每个用户喜欢的页面的 ID、名称和喜欢的数量。

(您仍然需要点击分页链接,收集所有结果并在之后进行排序,因为 API 目前不允许排序。)

关于ios - 获取所有喜欢的页面按一般喜欢排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32384649/

相关文章:

iphone - 如何将 Facebook 应用程序下载到 iPhone 模拟器

ios - 自定义类不会自动显示 - Swift 3 iOS 10.2 Xcode 8

facebook - Facebook 群组 Feed 中的帖子没有 "from"字段

ios - 如何使用 ObjectId 数组从 Parse 中检索用户数组?

为 Facebook 应用程序批准崩溃而构建的 iOS 模拟器

iOS SDK : Dismiss keyboard when a button gets clicked?

javascript - Facebook 点赞按钮问题

ios - 在 UITableView 上出队和重新排队时,MKMapView 不断缩小

regex - .WithTransparentBounds 是什么?

ios - Swift 3 中的二维数组