#facebook #facebook-fql
#Facebook #facebook-fql
Вопрос:
У меня возник вопрос о том, почему некоторые элементы не возвращаются с помощью Facebook FQL запроса.
Следующий запрос:
https://api.facebook.com/method/fql.query?query=select page_id, name, type, fan_count from page where name='Bauhaus' and type = 'MUSICIAN/BAND' order by fan_count desc
Предполагается, что он возвращает мне страницы, название которых = ‘Bauhaus’, а тип — ‘Музыкант / группа’. Результатом является:
<fql_query_response list="true">
<page>
<page_id>186907181359330</page_id>
<name>Bauhaus</name>
<type>MUSICIAN/BAND</type>
<fan_count>1</fan_count>
</page>
<page>
<page_id>175833025805207</page_id>
<name>Bauhaus</name>
<type>MUSICIAN/BAND</type>
<fan_count>0</fan_count>
</page>
</fql_query_response>
Если я затем добавлю ограничение, page_id=109194179106090, которого нет в приведенном выше списке: https://api.facebook.com/method/fql.query?query=select page_id, name, type, fan_count from page where page_id = 109194179106090
, я получу этот результат:
<fql_query_response list="true">
<page>
<page_id>109194179106090</page_id>
<name>Bauhaus</name>
<type>MUSICIAN/BAND</type>
<fan_count>100527</fan_count>
</page>
</fql_query_response>
Почему добавление ограничения должно возвращать мне элемент, которого нет в исходном запросе?
Ответ №1:
В FQL добавление ограничения идентификатора страницы автоматически добавляет его в запрос, предполагая, что вы точно знаете, чего хотите, и не будете сужать его по другим критериям.
Комментарии:
1. Ах — это полезно для объяснения того, почему он добавляется в этом случае — но не более широкого вопроса (который я должен был задать более явно) о том, почему эта же строка не возвращается при выполнении первого запроса. То есть, поскольку name = «Bauhaus» и type = «Музыкант / группа», почему я получаю 2 возврата, но не конкретный элемент, который я ищу в первом запросе. Спасибо, что объяснили другое поведение.