FQL获取我所有朋友的签到?

时间:2012-10-15 15:17:43

标签: facebook facebook-fql

现在这似乎是不可能的..任何人都可以给我一个合适的查询或一组可以做到这一点的查询吗?基本上,我需要所有朋友的签到:他们已经自己办理了登记,其中他们已经用照片查看过,其中一位不是我朋友的用户将其标记为。

我的第一次尝试是:

SELECT checkin_id, author_uid, page_id, coords, tagged_uids, timestamp FROM checkin WHERE (author_uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) OR author_uid=me()) ORDER BY timestamp DESC LIMIT 50

但这不包括带图片的签到。

我的第二次尝试是:

SELECT id, author_uid, app_id, timestamp, tagged_uids, page_id, page_type, coords, type FROM location_post WHERE author_uid IN (SELECT uid2 FROM friend WHERE uid1=me())

但是就像WHERE子句所暗示的那样,我们只会查找由朋友创建的签名,而不是我的朋友被标记的签名。

我的下一次尝试是:

SELECT id, author_uid, app_id, timestamp, tagged_uids, page_id, page_type, coords, type FROM location_post WHERE tagged_uids IN (SELECT uid2 FROM friend WHERE uid1=me())

但它只是返回一个空数据集,因为它可能应该。

如果没有提交500个奇怪的查询,我的每个朋友都有一个,有没有办法做到这一点?

非常感谢任何指针!

谢谢,
Teja公司

3 个答案:

答案 0 :(得分:1)

我们还可以使用以下FQL来获取朋友签名和签到的朋友签名:

SELECT checkin_id FROM checkin WHERE author_uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) OR tagged_uids IN (SELECT uid2 FROM friend WHERE uid1 = me())

答案 1 :(得分:0)

这是否需要在FQL中,或者图谱API不足以满足这个要求吗?

/me/friends?fields=checkins,虽然很慢(警告:有很多朋友可以完全超时),给我一份我最近签到的朋友列表(以及那些签到的喜欢,评论等)

你也可以把它分成几批朋友以获得更好的表现:

/?fields=checkins&ids=[CSV LIST OF FRIENDS TO CHECK]

答案 2 :(得分:0)

我最近试图解决同样的问题并发现通过/ me / friends使用图表?fields = checkins太慢而无法使用,有时会完全超时。

我只是偶然发现了搜索功能,这似乎完全符合我(也许你想要的)。

引用facebook文档:

  

签到:https://graph.facebook.com/search?type=checkin(此请求   返回您或您朋友的最新签到,或签到您或您的地方   你的朋友已被贴上标签;目前,它不接受q =   参数。)

搜索结果中有更多示例:https://developers.facebook.com/docs/reference/api/

相关问题