Amazon API слишком быстро отправляет запросы

Я создаю веб-сайт сравнения игр и хотел бы получить цены Amazon, включенные в него. Проблема, с которой я сталкиваюсь, - это использование их API для получения цен на 25 000 продуктов, которые у меня уже есть.

в настоящее время я использую ItemLookup от Amazons API и он работает, чтобы получить цену, однако после примерно 10 результатов я получаю сообщение об ошибке: "вы отправляете запросы слишком быстро. Пожалуйста, повторите свои запросы медленнее".

Что самое лучшее способ замедлить скорость запроса?

спасибо,

4 ответов


Если ваше приложение пытается отправить запросы, которые превышают максимальный предел запроса для вашей учетной записи, вы можете получить сообщения об ошибках от API рекламы продукта. Лимит запроса для каждого счета рассчитывается на основе показателей дохода. Каждому аккаунту, используемому для доступа к API рекламы продукта, разрешен первоначальный лимит использования в 1 запрос в секунду. Каждый счет получит дополнительный 1 запрос в секунду (максимум до 10 )за каждые $ 4,600 отгруженного товара доход, управляемый в течение 30-дневного периода (около $0,11 в минуту).

С Amazon API Docs

Если вы просто планируете запустить это один раз, то просто спите секунду между запросами.

Если это то, что вы планируете запускать чаще, вероятно, стоит оптимизировать его больше, убедившись, что время, необходимое для возврата запроса, снято с этого сна (поэтому, если мой запрос API занимает 200 мс вернись, мы спим только 800ms)


Так как он говорит только, что после 10 результатов вы должны проверить, сколько результатов вы можете получить. Если он всегда появляется после 10 быстрого запроса, вы можете использовать

 wait(500)

или еще несколько МС. Если это только после 10 раз, вы можете построить цикл и сделать это каждый 9-й запрос.


когда ваш запрос много повторов. затем вы можете создать кэш каждый день clear context. или обратитесь в AWS purchase authorization


Я прошел через ту же проблему, даже если я поставил 1 или более секунд задержки.

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

вам нужно будет сгенерировать другую пару ключей (и использовать ее при выполнении дальнейших запросов) и поставить задержку в 1,1 секунды, чтобы снова сделать быстрые запросы.

Это работает для меня.