1

使用图形 api 可以做到:

https://graph.facebook.com/me/checkins

但是我应该如何使用 FQL 呢?我试过这个,这表明:

SELECT message FROM checkin WHERE author_uid IN (SELECT uid2 FROM friend WHERE uid1 = me()) 
AND me() IN tagged_uids

但它甚至不返回一个结果。

谢谢。

4

2 回答 2

0

据我所见,IN似乎不适用于me(). 您必须首先获取用户 ID 并将其分配给变量。这会引发 OAuth 异常:

SELECT message FROM checkin WHERE author_uid = me() OR me() IN tagged_ids

但如果您设置[UserId]为当前用户的 id,则此方法有效:

SELECT message FROM checkin WHERE author_uid = [UserId] OR [UserId] IN tagged_ids

您不需要使用friend子查询。FQL 将仅返回对您的用户可见的签到。

为此,请确保您access_token同时拥有user_checkinsfriends_checkins权限。

于 2012-08-11T02:59:46.123 回答
0

@cpilko 提供了一个解决方案,但我找到了另一个解决方案,所以我在这里添加它作为任何访问此页面的人的参考:

SELECT id FROM location_post WHERE ([UserId] IN tagged_uids OR author_uid=me()) AND strpos(type,"checkin")>=0
于 2012-08-19T11:31:53.633 回答