Вебсправочник
Основы веб-разработки

HTTP 429: ограничение частоты запросов

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

Назначение

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

Как это работает

Сервер может передать Retry-After с временем ожидания. Ограничение может относиться к пользователю, ключу доступа, адресу клиента или другому признаку; точные правила зависят от приложения.

Пример

HTTP/1.1 429 Too Many Requests
Content-Type: application/json
Retry-After: 60

{"message":"Подождите перед повторной попыткой"}

Что должно получиться

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

Граница применения и частая ошибка

Не обходите ограничение сменой учётных данных или адресов. Не создавайте бесконечные автоматические повторы. Для безопасного клиента нужны предел числа попыток, отмена и учёт того, допустимо ли повторять саму операцию.

Самостоятельная проверка

На собственном стенде подставьте тестовый ответ 429 без генерации нагрузки. Проверьте сообщение пользователю, отсутствие плотного цикла и возможность отменить ожидание. При отсутствии Retry-After используйте явно выбранную ограниченную политику.

Самостоятельный учебный материал. Техническая документация: первоисточник по теме ↗. Если результат отличается, проверьте код и версию браузера.