字符串ID未在依赖的批处理请求中引用到api。解决方法?

时间:2012-04-27 13:46:33

标签: facebook-graph-api facebook-fql jsonpath

我目前正在尝试查询facebook api,通过两次fql查询的批处理请求检索一些数据。

其中一个查询以以下形式提取一组专辑ID:

Select aid FROM album WHERE ...

当另一个人试图检索找到的相册的照片时:

SELECT ... FROM photo WHERE aid IN ({result=album_ids:$.*.aid})

其中'album_ids'是第一个查询的名称。

大部分时间这种方式都很完美,但有时一张专辑附带一个包含'_'的辅助工具 - 由于文档将辅助工具指定为字符串,因此非常好。 但是,第二个查询中的jsonpath根据facebook api不引用id:

 Parser error: unexpected '_xxxxx' at position xx
 ...
 SELECT ... FROM photo WHERE aid IN (10000xxxxxxxxxx_xxxxx)

第一个查询的json结果显然引用了它们:

 [{\"aid\":\"xxxxxxxxxxxxxxxxxxx\"},{\"aid\":\"10000xxxxxxxxxx_xxxxx\"},...]

我在这里遗漏了什么或者facebook错误地跳过引用第二个查询中的ID,即使它们显然是字符串。 据我所知,在facebook-api和jsonpath规范中,这应该可行。

或者是否有解决办法使其按预期行事? (除了做引用客户端和两个单独的请求)。

现在我正在尝试按照此处的建议更改我的查询:Quoting/escaping jsonpath elements for in clause of dependent fql queries 但也许有一种方法没有完全重构查询本身。

0 个答案:

没有答案