@Treshholdhere

Почему невозможно правильно повторить запрос из браузера?

Пытаюсь повторить простой запрос который посылает Discord при присоединении аккаунта на сервер.
Использую библиотеку node-fetch, все хедеры беру из браузера, делаю все как в браузере ( кроме куки, куки клаудфаер устанавливаю вручную, так как живут они 10 лет )
Результат, после того как я приглашаю аккаунт на сервер через запрос, аккаунт улетает в бан через 15 секунд, дискорд его просто сносит.
Что я делаю не так? Делаю все вроде бы правильно, хедеры указываю. Пожалуйста помогите
  • Вопрос задан
  • 65 просмотров
Пригласить эксперта
Ответы на вопрос 2
@rPman
не про конкретно это но это тоже важно

Помимо самих запросов, средства защиты от автоматизации проверяют соседние запросы (казалось бы не важные), которые делает браузер но пропускает автоматизатор плюс возможно тайминги

Так же, поставь mitm прокси и сравни ее дампы при использовании браузера и использовании твоего скрипта, как минимум обнаружишь свои ошибки

p.s. порядок параметров в запросе тоже может быть актуальным
Ответ написан
Комментировать
@GrayHorse
Кроме заголовков (а также их порядка и значения) есть еще и протокол. В браузере используется h2 (HTTP/2), если его поддерживает сервер.

node-fetch, как и большинство HTTP либ, использует только http/1.1.

Плюс, по-умолчанию, он использует Connection: close, если не использовать свой http.Agent c {keepAlive: true}.

https://github.com/node-fetch/node-fetch#default-h...
https://github.com/node-fetch/node-fetch#custom-agent
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы