![]() |
![]() |
|
Слишком много запросов к серверу | ☑ | ||
---|---|---|---|---|
0
1ctube
22.09.25
✎
13:43
|
Всем привет.
Есть API, с которого нужно стянуть несколько сотен тысяч записей. По документации за раз я могу получить не больше 500 записей. Далее нужно передавать спецпараметр для следующего набора записей и т. д. Проблема в том, что после получения набора записей получаю иногда ошибку 429, а иногда прям сразу ещё до получения набора. Можно ли при использовании HTTP-соединения как-то регулировать количество запросов к серверу? В заголовках у API нет, например, Retry-After. |
|||
1
План счетов
22.09.25
✎
13:45
|
В цикле что ли запрос?
Сделай в обработке ожидания, раз в 5 секунд |
|||
2
1ctube
22.09.25
✎
13:48
|
(1) Саму процедуру получения записей по апи(в которой создается HTTP-соединение? в обработчике ожидания запускать?
|
|||
3
p-soft
22.09.25
✎
13:59
|
(2) повесить на регламентные запуск получения очередной порции 500 записей и прописать запуск регламента раз в 2-5 секунд
|
|||
4
Мультук
гуру
22.09.25
✎
14:08
|
(0)
Либо api не секретный и можно показать ссылку на его документацию на форуме. Либо api секретный и нужно задавать вопросы его создателям напрямую Либо в api где-то написано чёрным по белому "как скачать 100 тыс записей и НЕ делать мозг их серверу" |
|||
5
maxab72
22.09.25
✎
14:19
|
(4) например на npchk.nalog.ru сервис проверки статусов контрагентов по ИНН на дату за раз обрабатывает только небольшой пакет, голов в 10000, ничего секретного, но и обходов, чтоб сразу все выкачать вроде не предусмотрено.
|
|||
6
ptiz
22.09.25
✎
14:47
|
(0) МДЛП ?
"как-то регулировать количество запросов к серверу" - вопрос непонятен. Если на стороне сервера ограничение - его не обойдешь. |
|||
7
программистище
22.09.25
✎
15:16
|
Чем руководствуются люди задавая вопрос на форуме, если есть чей-то api и есть документация, нужно обратиться в компанию предоставляющую передачу данных по этому api
|
|||
8
palsergeich
22.09.25
✎
23:54
|
(7) да нормальный вопрос на подумать.
тем более получить то всего 1000 страниц, вендор решения не факт что быстрее ответит |
|||
9
1ctube
23.09.25
✎
06:19
|
(8) Он кстати и не ответил до сих пор, по этому решил на форуме вопрос задать.
Пробовал подключить обработчик ожидания, та же петрушка( |
|||
10
Лодырь
23.09.25
✎
06:23
|
Похожую штуку ставил при работе с ФГИС Зерно, простой счетчик и задержка между вызовами, если пока рановато стучаться. И медленно и верно все обрабатывается.
|
|||
11
1ctube
23.09.25
✎
07:14
|
(10) "задержка между вызовами" паузу реализовали?
|
|||
12
Лодырь
23.09.25
✎
08:20
|
(11) Да
|
|||
13
1ctube
23.09.25
✎
08:33
|
(12) После создания соединения?
|
|||
14
mzelensky
23.09.25
✎
09:26
|
(13) Если в рамках клиента:
делаешь обработчик ожидания на форме. Выставляешь срабатывание раз в 3 секунды. Далее делаешь вызов сервера в попытке. Если получил - ок, делаешь новый запрос. Если отвалилось, то обрабатываешь это попыткой и увеличиваешь ожидание +2 секунды к текущему. Снова пробуешь...отвалилось - еще +2 секунды. Снова попробовал - получилось, скидываешь ожидание к базовым 3 секундам. |
|||
15
mzelensky
23.09.25
✎
09:27
|
В свое время таможенную базу так сканировали и анализировали.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |