2

我正在玩 Facebook API 的 fql.multiQuery 方法。我只是在使用API Test Console,并试图获得成功的响应,但似乎无法弄清楚它到底想要什么。

这是我在“查询”字段中输入的文本:

{"tags" : "select subject
from photo_tag
where subject != 601599551
and pid in (
 select pid
 from photo_tag
 where subject = 601599551
)
and subject in (
 select uid2
 from friend
 where uid1 = 601599551
)",
"foo" : "select uid from user where uid = 601599551"}

它只会给我一个queries parameter: array expected.错误。

我还尝试了几乎所有我能想到的排列,包括将名称/查询对包装在它们自己的花括号中、添加括号、添加空格、删除空格以防它不需要关联数组(对于那些观看编辑,我现在才发现这些美妙的事情...... oy),一切都无济于事。我在这里是否缺少一些非常明显的东西,或者我是否需要像Chuck Norris Jon Skeet 那样做,而只是为了听我的吩咐?


更新:给现在发现此问题的任何人的说明:fql.multiquery 测试控制台似乎已损坏。您可以通过在测试控制台中单击生成的 url 并将“查询”参数手动添加到查询字符串中来测试您的查询。

4

1 回答 1

4

显然,对于 Jon Skeet 的评论,我与事实相差不远......似乎测试控制台非常特别关注您可以在哪里使用的空白:

http://bugs.developers.facebook.com/show_bug.cgi?id=6403

这就是我最终与我的代码有关的事情:

{"tags":"select subject from photo_tag where subject != 601599551 and pid in (select pid from photo_tag where subject = 601599551 ) and subject in (select uid2 from friend where uid1 = 601599551 )","foo":"select uid from user where uid = 601599551"}

惊人的。因为那是可读的。

于 2009-12-20T00:08:13.667 回答