Facebook API - уменьшите объем запрашиваемых данных, затем повторите запрос на 1 строку - PullRequest
2 голосов
/ 30 марта 2019

У меня есть следующая логика для запроса объявлений: Если Facebook попросит меня уменьшить объем запрашиваемых данных, я уменьшу половину диапазона дат. Если диапазон дат совпадает, я наполовину limit.

Дошло до того, что я отправил этот запрос:

https://graph.facebook.com/v3.2/{account}/insights?level=ad&time_increment=1&limit=1&time_range={"since":"2019-03-29","until":"2019-03-29"}&breakdowns=country&after=MjMwNwZDZD

Но я все еще получаю эту ошибку:

Пожалуйста, уменьшите объем запрашиваемых данных, затем повторите запрос

Больше я ничего не могу сделать.

Обратите внимание, что это случается только иногда.

1 Ответ

2 голосов
/ 23 апреля 2019

Один из способов избежать ошибки - это когда вы запрашиваете только 1 элемент (limit=1), чтобы начать разбивать fields и запрашивать половину fields в каждом запросе.

Другой способ - запустить асинхронный отчет, который не должен иметь такой низкий срок.

Официальный ответ команды API Facebook:

Похоже, вы запрашиваете много полей, это, вероятно, причина этой ошибки. Это приведет к превышению времени ожидания запроса.

Не могли бы вы попробовать использовать асинхронные запросы, как описано здесь: https://developers.facebook.com/docs/marketing-api/insights/best-practices/#asynchronous?

Асинхронные запросы имеют гораздо более длительный срок, это, вероятно, разрешит ваша проблема.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...