Подтвердить что ты не робот

Не понимаю "(# 4) Достигнут лимит пользовательского запроса"

{
   "error": {
      "message": "(#4) User request limit reached",
      "type": "OAuthException"
   }
}

Я не уверен в причине этой ошибки, и да, я много раз искал для подобных проблем пользователей (это ошибка № 17, или достигнут предел приложения). И я делаю это на регулярных вызовах API графа (таких как https://graph.facebook.com/me), не обязательно, чтобы FQL, как и другие, столкнулся.

User request limit reached делает его показательным как ограничение для каждого пользователя, но согласно http://www.fb-developers.info/tech/fb_dev/faq/general/gen_10.php, #4 есть "Application request limit reached" и #17 есть "User request limit reached".

Я не верю, что в любом случае я нажимаю ограничение на 100 Мб/день. И я получаю это только для токенов паролей пользователей, поэтому это не сообщение об ошибке приложения, которое я получаю. И когда я прошу слишком быстро, я обычно получаю FQL_EC_RATE_LIMIT_EXCEEDED.

Но для тех двух пользователей, у которых указанная выше ошибка "(#4) User request limit reached", я временно занес их в черный список из загрузки данных, но все же они все еще получают вышеуказанную ошибку, когда я пытаюсь получить доступ, используя этот токен через день.

Итак, в заключение...

Я не понимаю, как я могу получить "(#4) User request limit reached", когда auth-токен для этого пользователя не используется для каких-либо запросов в течение 24-часового периода. И я не знаю, что особенного в этих пользователях.

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

4b9b3361

Ответ 1

Вот список кодов ошибок: http://fbdevwiki.com/wiki/Error_codes

# 4 означает, что вы сделали слишком много запросов API. Существуют ограничения на то, сколько вашего приложения может сделать за определенное количество времени. Существуют также ограничения, основанные на каждом пользователе. Если вы подождете некоторое время, ошибка должна очиститься и позволить вам снова делать запросы.

Коды ошибок - это возврат из более старого API, поэтому они могут просто комбинировать # 4 и # 17, чтобы всегда просто возвращать # 4.

Кроме того, ограничения не фиксируются, например, "100M/день". Перейдите в раздел "Анализ" для вашего приложения и посмотрите в разделе "Диагностика". Он покажет вам, какие запросы вызывают эту ошибку. Ограничения меняются изо дня в день, и я думаю, что они связаны с тем, сколько еще трафика существует.