Как использовать Axios с прокси: Полное руководство 2026 года
Кратко
Конфигурация прокси Axios — это функция Node.js. Axios на стороне браузера не может выбрать исходящий прокси, так как сеть контролирует браузер.
Axios 1.19.0 принимает объект proxy, содержащий protocol, host, port и необязательный auth. Установите тайм-аут и проверьте возвращаемый контент, а не только статус.
Обычные переменные окружения HTTP_PROXY, HTTPS_PROXY и NO_PROXY работают в Node.js. Установите proxy: false, когда пользовательский агент должен быть единственным механизмом маршрутизации.
Клиенты с круговой маршрутизацией делают выбор прокси видимым. Добавьте проверку состояния конечной точки, время ожидания и ограниченный бюджет повторных попыток перед увеличением объема.
Используйте агент для протоколов или политик туннелирования за пределами встроенного HTTP прокси Axios. Сравните HttpProxyAgent, HttpsProxyAgent или SocksProxyAgent с фактической конечной точкой.
Что такое прокси Axios?
Прокси Axios — это промежуточное звено, настроенное для адаптера Node.js Axios, так чтобы запросы проходили через назначенную сетевую конечную точку. официальная конфигурация запросов Axios определяет параметр proxy, доступный только для Node.js, с протоколом прокси, именем хоста, портом и необязательными учетными данными для базовой аутентификации.
Попробуйте Nstproxy - Начните бесплатный тест сегодня
Axios по-прежнему обрабатывает конфигурацию запросов, обещания, парсинг ответов, тайм-ауты, поведение переадресации и ошибки. Прокси изменяет маршрут между процессом Node.js и пунктом назначения. Обычная конечная точка, такая как Nstproxy Residential Prime Proxies, может подключаться через обычный объект прокси Axios без специфического JavaScript пакета для провайдера.
Граница браузера имеет значение. Axios, работающий в веб-странице, использует адаптер браузера, и JavaScript не может выбрать системный или исходящий прокси для каждого запроса. Вместо этого настройте браузер, операционную систему, расширение, тестовый уменьшитель или обратный прокси. Поле proxy в сервере разработки React также является особенностью инструмента сборки, а не настройкой запроса Axios Node.js, описанной здесь.
Используйте прокси Axios для авторизованных проверок API, QA локализации, мониторинга цен, рабочих процессов с открытыми данными и контролируемого выхода сервера. Прокси не предоставляет разрешение на доступ к цели и не гарантирует, что успешный ответ содержит предполагаемые данные.
Как работает маршрутизация прокси Axios в Node.js
Маршрутизация прокси Axios имеет три контрольные точки: явный объект proxy, обычные переменные окружения или пользовательский агент. Выберите один доминирующий механизм для каждого запроса, чтобы маршрут оставался подлежащим тестированию.
Механизм
Лучше всего подходит
Важная граница
proxy: { protocol, host, port }
Стандартная конфигурация прокси HTTP или HTTPS
Только адаптер Node.js
HTTP_PROXY / HTTPS_PROXY
Управляемая маршрутизация на этапе развертывания
NO_PROXY может обойти выбранные хосты
httpAgent / httpsAgent
Пользовательское туннелирование, политика соединений или SOCKS
Установите proxy: false, чтобы избежать двойной обработки
Текущая документация Axios утверждает, что HTTP-шлюз может устанавливать CONNECT-туннели для HTTPS-назначений и что учетные данные прокси отправляются при обмене прокси. Поддерживайте включенную проверку TLS исходника. Если надежный маршрут инспекции использует частный CA, установите утвержденный CA, а не отключайте проверки сертификатов.
Официальные релизы Axios указывают версию 1.19.0 как последнюю на момент тестирования. Эта статья указывает на эту версию, так как недавние релизы изменили поведение прокси, переадресации, редактирования ошибок и адаптера Node.js.
Предварительные требования
Примеры запускались с Node.js 22.23.2, Axios 1.19.0 и http-proxy-agent 7.0.2. Создайте проект ESM и установите протестированные пакеты:
Добавьте "type": "module" в package.json, затем предоставьте авторизованный TARGET_URL и конфигурацию прокси через защищенные переменные окружения. Никогда не коммитите пароли прокси или не записывайте полный адрес конечной точки.
Установите ограниченные тайм-ауты и лимиты по размеру ответов в соответствии с вашим приложением. Текущая документация по конфигурации запросов предупреждает, что максимальные размеры ответа и тела по умолчанию не ограничены, поэтому службы, которые вызывают ненадежные серверы, должны устанавливать явные ограничения.
Here is the translated text:
Подробный учебник: Как использовать Axios с прокси
Вы можете использовать Axios с прокси через пять протестированных методов Node.js: нативный объект прокси, аутентификацию прокси, переменные среды, переиспользуемый пул ротации или пользовательский агент. Каждый пример ниже выполнялся против специально созданной локальной конечной точки, которая возвращала её непубличный идентификатор маршрута и целевой URL.
Метод 1: Настройте один прокси на экземпляре Axios
Используйте axios.create(), когда несколько вызовов используют один прокси, таймаут и политику ответа. Экземпляр сохраняет конфигурацию маршрутизации отдельно от несвязанных вызовов Axios.
В выполненном ответе содержалось route: basic-18580 и абсолютный целевой http://fixture.test/items. В производстве замените фиксированный маркер на авторизованный ответ с отражением IP или идентификатор сессии провайдера.
Всегда преобразовывайте порт в число и явно указывайте протокол. Строка, скопированная в host, не должна содержать http://; протокол, хост и порт являются отдельными полями. Руководство по прокси Node.js от Nstproxy охватывает тот же уровень маршрутизации за пределами Axios.
Метод 2: Используйте аутентифицированный прокси Axios
Используйте proxy.auth, когда HTTP-прокси требует базовой аутентификации. Передача имени пользователя и пароля в качестве отдельных полей избегает ручного построения URL с данными для аутентификации.
Локальный прокси сначала потребовал 407 вызов и затем принял имя пользователя, содержащее пробел, и пароль, содержащий @ и :. Axios вернул { route: 'auth-18581', authenticated: true }.
Настройка proxy.auth в Axios перезаписывает вручную указанный заголовок Proxy-Authorization. Храните учетные данные прокси отдельно от учетных данных целевого сервера: auth в запросе или заголовок Authorization аутентифицируют на конечном сервере, в то время как proxy.auth аутентифицирует на промежуточном сервере.
Метод 3: Используйте HTTP_PROXY и HTTPS_PROXY
Используйте переменные окружения прокси, когда платформа выполнения управляет исходящим маршрутизацией. Axios разрешает стандартные переменные прокси в Node.js, а NO_PROXY указывает хосты, которые должны идти напрямую.
Запуск на основе окружения вывел basic-18580 без явного объекта прокси. Проверьте переменные верхнего и нижнего регистра, NO_PROXY, настройки контейнера и конфигурацию менеджера служб, когда поведение отличается на разных машинах.
Установите proxy: false в запросе или экземпляре, когда Axios должен игнорировать переменные окружения прокси. Это необходимо, когда пользовательский Agent уже выполняет маршрутизацию прокси.
Метод 4: Ротация ограниченного пула клиентов Axios
Используйте заранее настроенные экземпляры Axios для детерминированной ротации на стороне приложения. Выбор по кругу гарантирует, что каждый доступный конечный пункт получает работу в известном порядке.
importaxiosfrom"axios";const proxyConfigs =[{protocol:"http",host:"127.0.0.1",port:18580},{protocol:"http",host:"127.0.0.1",port:18582},];const clients = proxyConfigs.map((proxy)=> axios.create({ proxy,timeout:10_000}));const routes =[];for(let index =0; index <4; index +=1){const response =await clients[index % clients.length].get(process.env.TARGET_URL);if(typeof response.data.route!=="string"){thrownewError("Ответ не содержал маркер маршрута");} routes.push(response.data.route);}console.log(routes);
Вывод чередовался между basic-18580, rotate-18582, basic-18580 и rotate-18582. Случайный выбор может повторно выбрать тот же конечный пункт; детерминированный выбор легче наблюдать и тестировать. Руководство по ротации IP для веб-скрапинга объясняет, как изменения маршрута влияют на независимые задачи сбора.
Ротация в продакшене требует большего, чем просто выбор. Отслеживайте последовательные сбои, применяйте перерывы, ограничивайте параллелизм и повторяйте только временные ошибки. Не повторяйте автоматически запрос, изменяющий состояние, если операция не идемпотентна или не содержит ключ идемпотентности. Держите cookie и стабильный маршрут вместе для сохранения состояния сессии.
Метод 5: Прокидывание Axios через пользовательский Agent
Используйте пользовательский Agent, когда протокол конечной точки или политика туннелирования находятся за пределами штатного пути прокси Axios. Отключите разрешение прокси Axios, чтобы Agent был единственным источником правды по маршрутизации.
Запуск на основе Agent выдал basic-18580. пакет http-proxy-agent предназначен для соединений HTTP с прокси. Для HTTPS-туннеля или конечной точки SOCKS используйте соответствующий поддерживаемый Agent и присвойте его правильному полю httpAgent или httpsAgent. Кодируйте учетные данные, когда они встроены в URL Agent.
Как проверить маршрут прокси Axios
Проверьте маршрут прокси Axios, проверяя сетевой выход, контракт ответа и принятые данные отдельно. Начните с авторизованного IP-рефлексии или контролируемой диагностической конечной точки. Подтвердите его идентификатор маршрута, затем вызовите реальную цель и требуйте ожидаемый тип контента, статус и стабильное семантическое поле.
Axios обычно отклоняет ответы вне его принятого диапазона статусов, но статус 200 все равно может нести страницу ошибки, экран входа, альтернативную локализацию или неожиданный JSON-схему. официальное руководство по обработке ошибок Axios различает ошибки с ответами, ошибки без ответов и сбои настройки. Записывайте только неоплачиваемые коды ошибок, идентификаторы маршрутов и временные метки.
Установите AbortSignal или таймаут, ограничьте размер ответа и редиректы. Сохраняйте заголовки, чувствительные к целевому серверу, только там, где это необходимо; последние версии Axios включают ужесточение редиректов и сериализации, но приложениям по-прежнему нужна белая политика для целевых адресов, когда URL-адреса поступают из внешнего ввода.
Выбор маршрута Nstproxy для Axios
Резидентные прокси-серверы Nstproxy Prime предоставляют стандартные аутентифицированные конечные точки для рабочих процессов Node.js, которым нужны резидентная маршрутизация, выбор местоположения и ротация или фиксированные сессии на текущей продуктовой платформе. Axios может подключаться через свой родной объект прокси или совместимый агент, что позволяет держать бизнес-логику независимой от специфического для поставщика SDK. Модели пакетной и оплаты за использование позволяют командам выбирать модель работы после измерения трафика и принятых ответов. Продукт подходит для авторизованной локализации, мониторинга цен, проверки рекламы и задач с использованием общедоступных данных; протестируйте конечный пункт, протокол и политику сессии перед увеличением конкурентности.
Настройка родного Axios: Сопоставьте сгенерированную конечную точку с protocol, host, port и proxy.auth.
Маршрутизация с учетом сеансов: Используйте ротацию для независимых вызовов или оставьте один фиксированный маршрут с зависимыми от cookie задачами.
Инфраструктура прокси не проверяет поля JSON и не рендерит приложения, предназначенные только для браузеров. Руководство по веб-скрапингу на JavaScript помогает определить, достаточно ли HTTP-клиента или требуется выполнение в браузере.
Общие ошибки прокси Axios и решения
Симптом
Вероятная причина
Практическое решение
ECONNREFUSED
Неправильный хост/порт или оффлайн-прокси
Подтвердите доступность и протокол; используйте ограниченный таймаут.
407 Proxy Authentication Required
Отсутствуют или недействительные учетные данные прокси
Проверьте поля proxy.auth и политику учетной записи; не пытайтесь бесконечно повторять попытки с ошибочными учетными данными.
Прокси работает через HTTP, но HTTPS не удается
Проблема с CONNECT или доверием TLS
Подтвердите поддержку туннелирования и намеренную CA; никогда не отключайте проверку TLS как постоянное решение.
Появляется прямой IP
Совпадение с NO_PROXY или используется Axios на стороне браузера
Проверьте правила обхода среды; настроите маршрутизацию браузера за пределами Axios.
Пользовательский агент игнорируется или дублируется
Решение прокси Axios все еще активно
Установите proxy: false и прикрепите агент к правильному полю.
Конечная точка SOCKS не работает в proxy
Встроенная опция ожидает прокси, совместимый с HTTP
Используйте поддерживаемый SOCKS-агент и закодированный SOCKS-URL.
Статус 200, но недействительные данные
Мягкая ошибка или альтернативный ответ
Проверьте тип контента, маркер маршрута и предметную схему для домена.
Надежная конфигурация прокси Axios начинается с границ Node.js и одного явного механизма маршрутизации. Используйте родной объект прокси для стандартных HTTP-шлюзов, proxy.auth для учетных данных, переменные окружения для маршрутов, управляемых развертыванием, и proxy: false с пользовательским агентом, когда агент отвечает за транспортное поведение.
Начните с одной авторизованной цели и подтвердите маршрут и контракт ответа. Добавьте ограниченный пул клиентов только после того, как таймаут, семантическая валидация и классификация ошибок будут работать; подумайте о менеджере прокси Nstproxy позже, если пулы, здоровье и политики маршрутизации превышают код приложения.
Ознакомьтесь с Nstproxy — начните свой бесплатный пробный период сегодня
В: Работает ли конфигурация прокси Axios в браузере?
Нет. Опция proxy в Axios предназначена только для Node.js; JavaScript браузера не может выбирать исходный прокси браузера. Вместо этого настройте прокси браузера, системы, расширения, сервера разработки или шлюза.
В: Как мне аутентифицироваться на прокси в Axios?
Добавьте auth: { username, password } внутрь объекта proxy в Axios. Держите эти значения в защищенной конфигурации времени выполнения и четко отделяйте их от авторизации целевого сервера.
В: Поддерживает ли Axios HTTP_PROXY и HTTPS_PROXY?
Да. Axios поддерживает обычные переменные окружения прокси в Node.js, в то время как NO_PROXY обходится у сопоставленных хостов. Используйте proxy: false, когда запрос должен игнорировать их.
В: Может ли Axios использовать прокси SOCKS5?
Axios требует агента, совместимого с SOCKS, а не встроенного HTTP-прокси-объекта. Установите оба соответствующих поля Agent и proxy: false, чтобы Axios не применял второй маршрут.
В: Как я могу ротировать прокси с Axios?
Создайте ограниченный набор сконфигурированных экземпляров Axios и выбирайте их с помощью наблюдаемой политики, такой как круговая или осведомленная о состоянии выбор. Добавьте время ожидания и конечный бюджет повторных попыток, а не пытайтесь повторить каждую ошибку через каждую конечную точку.
В: Почему прокси Axios возвращает статус 200 с неправильным контентом?
Прокси или целевой сервер могут вернуть страницу с мягкой ошибкой со статусом 200. Потребуйте ожидаемый тип контента, доказательства маршрута и специфические для домена поля перед тем, как принять ответ.
Marcus Chen
Aug. 20th 2026
110M+ реальных IP с 99.9% успешных доступов
Средний отклик ~0.5с для задач высокой конкуренции
Всего от $0.1/GB
Мгновенный доступ к премиальным residential, datacenter, IPv6 и ISP пулам.