我想使用Graph API搜索页面,并根据喜欢的数量对搜索结果进行排序。但显然没有办法添加任何参数来对搜索结果进行排序,而不是遍历每个页面以获得其喜欢的数量。
此外,我还没有找到有关Graph API搜索功能如何决定结果顺序的任何信息。如果我使用不同的访问令牌搜索具有相同搜索词的页面(例如,Volkswagen),则搜索结果的顺序是不同的。显然,这是排序搜索结果的决定性因素。有人知道Graph API默认如何排序搜索结果吗?
答案 0 :(得分:4)
API不提供大多数端点的排序。
您可以通过使用字段扩展来获取同一请求中返回页面的粉丝数:
/search?type=page&q=blah&fields=id,name,fan_count
- 然后您可以使用它来进行排序。让您不必再提出额外的请求 - 但是根据您的搜索返回的页数(此处的页面,而不是FB页面),您可能需要在进行排序之前获取所有这些页面。
此外,我没有找到有关Graph API的搜索功能如何决定结果顺序的任何信息。如果我使用不同的访问令牌搜索具有相同搜索词的页面(例如,Volkswagen),则搜索结果的顺序会有所不同。
当您使用用户访问令牌时,搜索结果将根据令牌所属的特定用户进行定制。
您还可以使用应用访问令牌执行此搜索 - 但之后您将只获得不受访问限制的公共页面。如果您使用用户访问令牌,那么它将考虑特定用户可以看到的非公共页面。
答案 1 :(得分:0)
facebook提供chronological
和reverse_chronological
,类似于
分别为升序和降序,并且可以这样使用;
https://graph.facebook.com/1809938745705498fields=comments.order(chronological).limit(3)
您还可以查看文档here