我们公司当前的Hackathon遇到了一个问题。我们通过FQL访问我们的新闻源。
当我们尝试访问一些旧的(但不是那么多!)信息时,我们遇到了一个问题:有时我们会返回一些数据,有时则不会。
这对我们来说很重要,因为它使我们的项目不可靠。
实施例:
fql?q=select source_id, message, attachment, created_time from stream where filter_key="nf" AND created_time < 1323648660
有时返回:
{
"data": [
]
}
有时会按预期返回25个数据列表。
看起来像是一个错误的缓存管理?
这是FB的开放式错误吗?这有点关键。
希望你能帮助我,
此致
FrançoisJAGUELIN
答案 0 :(得分:0)
将source_id限制为一个用户,例如:
fql?q=select source_id, message, attachment, created_time from stream where filter_key="nf" AND created_time < 1323648660 AND source_id = XXXX
如果不将source_id限制为一个用户,则查询的时间会大大减少。如果需要查询多个source_id,请将单个source_id查询打包到多个查询中。
来自FbDevWiki ......
*流表实际上是一个表中内置的两个概念。如果指定filter_key和/或多个用户,则结果将类似于Facebook主页中的流。如果只指定了一个用户,并且未指定filter_key,则表将假定您需要类似于配置文件的视图,以及所有这些含义。 这些行为显着不同。例如,类似主页的视图仅汇总过去几天的数据。类似于配置文件的视图从我们的数据库中获取更旧的数据。*