Помогите с fql.multiQuery - PullRequest
       14

Помогите с fql.multiQuery

2 голосов
/ 20 декабря 2009

Я играю с методом 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. ошибка.

Я также пробовал практически все перестановки, которые я мог придумать, включая обертывание пар имя / запрос в их собственные фигурные скобки, добавление скобок, добавление пробелов, удаление пробелов в случае, если не требуется ассоциативный массив (для тех просматривая правки, я только что узнал об этих замечательных вещах сейчас ... ой), но все безрезультатно. Есть ли что-то до боли очевидное, что я здесь упускаю, или мне нужно сделать что-то вроде Чака Норриса Джона Скита и просто сделает это, чтобы выполнить мою заявку?


Обновление: Примечание для тех, кто сейчас находит этот вопрос: Тестовая консоль fql.multiquery не работает. Вы можете проверить свой запрос, щелкнув по сгенерированному URL-адресу в консоли тестирования и вручную добавив параметр query в строку запроса.

1 Ответ

4 голосов
/ 20 декабря 2009

Очевидно, я не слишком далек от истины с комментарием Джона Скита ... Кажется, тестовая консоль ОЧЕНЬ точна в отношении того, какие пробелы вы можете использовать где:

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"}

Высокий. Потому что это читабельно.

...