[英]Getting stream posts by fql query with limit returns unexpected results
[英]FQL stream doesn't return the number of posts as defined by limit
我尝试了"SELECT post_id, actor_id, target_id, message, likes FROM stream WHERE source_id = me() LIMIT 100"
,它返回了我81条而不是100条帖子,然后我尝试了"SELECT post_id, actor_id, target_id, message, likes FROM stream WHERE source_id = me() LIMIT 50"
,并且由于第一个查询返回81而期望返回50个帖子,但是结果仅包含43个帖子。
想知道LIMIT是如何工作的。
此外, created_time
不适用于我, "SELECT post_id, actor_id, target_id, message, likes FROM stream WHERE source_id = me() AND created_time > 1262196000 LIMIT 100"
返回81个帖子,而"SELECT post_id, actor_id, target_id, message, likes FROM stream WHERE source_id = me() AND created_time > 1262196000"
仅返回5。
是的,那很正常。 Facebook执行您的FQL,并返回与您的查询匹配的所有帖子。 在这种情况下,有100个帖子。
然后, Facebook过滤掉您的应用不可见的帖子。 这是基于演员的隐私设置。 stream
表中没有visible_to_me
字段,该字段允许您预过滤结果。
如果您想要100个帖子,则要求200个,然后显示前100个。大多数情况下,结果中至少会有100个帖子。
如果您查询的数据stream
没有LIMIT
,您最多可以获取最近50条帖子或最近30天的项目, 以较少者为准 。
另外,如果您不考虑UNIX时间戳(我不认为strtotime()
,则可以对created_time
查询使用strtotime()
在FQL中创建时间戳。 它解析与PHP strtotime()
函数相同的字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.