FB FQL限制分页不起作用(表现奇怪)

时间:2014-02-26 07:53:05

标签: php facebook facebook-fql

我正在使用FQL来运行FB Likes的查询,但是分页看起来似乎很奇怪。第一个查询运行以获取最多400个like_urls,如下所示:

SELECT url from url_like where user_id='FB_USER_ID' LIMIT 0, 400

它在此示例中返回大约25个网址的列表。问题是我有这个循环以防万一它超过400.在这个循环中,查询可能再次运行如下:

SELECT url from url_like where user_id='FB_USER_ID' LIMIT 25, 400

结果是相同的25个URL ...不应该限制25,400忽略每个FQL的前25个?我用来打破循环的机制是,如果返回的结果总计为0,那么这当前将我的查询放入循环中,它只是超时。

有关FDB FQL限制如何工作的任何指针或信息,或LIMIT不适用于like_url的原因将不胜感激。

我所拥有的当前查询的前5次迭代的示例(尽管URL列表显示相同,但​​结果中的数字甚至显示不一致)

02-26-2014 08:03:33 - **** Running pass 1 to get likes for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Likes pass 1 URL Query: SELECT url from url_like where user_id=FB_USER_ID ORDER BY url ASC LIMIT 0, 400 ****
02-26-2014 08:03:33 - **** pass 1 had 25 URLs for FB UID FB_USER_ID ****

02-26-2014 08:03:33 - **** Running pass 2 to get likes for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Likes pass 2 URL Query: SELECT url from url_like where user_id=FB_USER_ID ORDER BY url ASC LIMIT 25, 400 ****
02-26-2014 08:03:33 - **** pass 2 had 22 URLs for FB UID FB_USER_ID ****

02-26-2014 08:03:33 - **** Running pass 3 to get likes for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Likes pass 3 URL Query: SELECT url from url_like where user_id=FB_USER_ID ORDER BY url ASC LIMIT 47, 400 ****
02-26-2014 08:03:33 - **** pass 3 had 20 URLs for FB UID FB_USER_ID ****

02-26-2014 08:03:33 - **** Running pass 4 to get likes for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Likes pass 4 URL Query: SELECT url from url_like where user_id=FB_USER_ID ORDER BY url ASC LIMIT 67, 400 ****
02-26-2014 08:03:33 - **** pass 4 had 19 URLs for FB UID FB_USER_ID ****

02-26-2014 08:03:33 - **** Running pass 5 to get likes for FB UID FB_USER_ID ****
02-26-2014 08:03:33 - **** Likes pass 5 URL Query: SELECT url from url_like where user_id=FB_USER_ID ORDER BY url ASC LIMIT 86, 400 ****
02-26-2014 08:03:33 - **** pass 5 had 19 URLs for FB UID FB_USER_ID ****

1 个答案:

答案 0 :(得分:1)

FQL只显示你可以看到的网址..例如,我有10个喜欢,但前3个因某些原因被隐藏:

[0] Hidden
[1] Hidden
[2] Hidden
[3] Public
[4] Public
...
[9] Public

此FQL查询

SELECT url from url_like where user_id='FB_USER_ID' LIMIT 0, 10

只会返回7条记录(公众)..同样会发生

SELECT url from url_like where user_id='FB_USER_ID' LIMIT 3, 10

SELECT url from url_like where user_id='FB_USER_ID' LIMIT 100

解决方案是计算所有喜欢的内容,这样你就知道你必须要记录多少条记录......但是 Facebook FQL没有实现'计数'功能。

所以这个问题没有真正解决方案