Phi*_*Woe 5 facebook-fql facebook-graph-api facebook-php-sdk
这是我第一次自己找不到错误的解决方案。我尝试执行fql查询,但是我得到了一个非常奇怪的响应:/
FQL:
{
"477215715631180":
"SELECT name, start_time, location, creator, pic_square
FROM event WHERE eid=477215715631180",
"creator_477215715631180":
"SELECT name FROM profile WHERE id IN (SELECT creator FROM #477215715631180)"
}
Run Code Online (Sandbox Code Playgroud)
响应:
(#601) Parser error: unexpected '#' at position 58.
Run Code Online (Sandbox Code Playgroud)
位置58:
... FROM event WHERE ...
Run Code Online (Sandbox Code Playgroud)
有没有人解决?
问题似乎是您不能将子查询与保留的 FQL 项命名相同。您在此处使用 id 作为查询指示符。Facebook 不喜欢这样。
我可以通过在子查询名称的开头添加“q”来运行您的查询:
{
"q477215715631180":
"SELECT name, start_time, location, creator, pic_square
FROM event WHERE eid=477215715631180",
"creator_477215715631180":
"SELECT name FROM profile WHERE id IN (SELECT creator FROM #q477215715631180)"
}
Run Code Online (Sandbox Code Playgroud)
对于您的解析器错误,Facebook 的消息未引用整个 FQL 多重查询。Facebook 单独解析每个查询,并仅针对其正在解析的当前查询抛出错误。所以在你的例子中,第一个查询解析得很好,然后这个错误来自你的creator_查询,发生#在位置 58。
| 归档时间: |
|
| 查看次数: |
2842 次 |
| 最近记录: |