СРЕДА ВЫПОЛНЕНИЯ ИНТЕГРАЦИЯ

КАК ИСПОЛЬЗОВАТЬ PROXY POLAND С NODE.JS

Примеры Node.js-кода для маршрутизации HTTP/HTTPS-запросов, Axios и fetch через выделенные 4G/5G мобильные прокси. Он описывает рекомендуемый протокол, формат учётных данных, процесс ротации, проверку подключения и практические случаи, где выделенный польский мобильный IP повышает надёжность автоматизации, парсинга или работы с аккаунтами.

Проверено:
ОБЗОР

ПОЧЕМУ NODE.JS + PROXY POLAND

Node.js — ведущая среда выполнения для серверной автоматизации и скрейпинга API. Маршрутизируя запросы через 4G/5G мобильные прокси Proxy Poland, вы получаете реальные IP операторов.

Настройку Node.js проверяйте с тем же протоколом прокси, профилем браузера, целевым сайтом и рабочим процессом аккаунта, которые будут использоваться в продакшене. До масштабирования проверьте видимый IP, DNS-маршрут, ASN, устойчивость сессии, поведение ротации и состояние входа.

ПОШАГОВОЕ РУКОВОДСТВО

ИНСТРУКЦИЯ ПО НАСТРОЙКЕ

  1. 01

    Установить HTTP-библиотеки

    Установите axios или используйте встроенный модуль https:

    npm install axios
    # For SOCKS5 support:
    npm install socks-proxy-agent
    # For HTTPS proxy:
    npm install https-proxy-agent
  2. 02

    Получить учётные данные

    Зарегистрируйтесь на proxypoland.com и получите IP, порт, логин и пароль.

  3. 03

    Настроить HTTP-прокси с Axios

    Маршрутизировать запросы Axios через прокси:

    const axios = require('axios');
    
    const response = await axios.get('https://httpbin.org/ip', {
      proxy: {
        host: 'proxy-ip',
        port: 8080,
        auth: {
          username: 'your-username',
          password: 'your-password',
        },
        protocol: 'http',
      },
    });
    console.log(response.data);
    // Should show Polish mobile IP
  4. 04

    Настроить с модулем https

    Использовать встроенный https с агентом SOCKS5:

    const { SocksProxyAgent } = require('socks-proxy-agent');
    const https = require('https');
    
    const agent = new SocksProxyAgent(
      'socks5://username:password@proxy-ip:port'
    );
    
    const options = {
      hostname: 'httpbin.org',
      path: '/ip',
      agent,
    };
    
    https.get(options, (res) => {
      let data = '';
      res.on('data', chunk => data += chunk);
      res.on('end', () => console.log(JSON.parse(data)));
    });
  5. 05

    Использовать с node-fetch

    Настроить node-fetch с агентом прокси:

    const fetch = require('node-fetch');
    const { HttpsProxyAgent } = require('https-proxy-agent');
    
    const agent = new HttpsProxyAgent(
      'http://username:password@proxy-ip:port'
    );
    
    const response = await fetch('https://httpbin.org/ip', { agent });
    const data = await response.json();
    console.log(data);
  6. 06

    Добавить ротацию IP

    Ротировать IP между сессиями скрейпинга:

    const axios = require('axios');
    
    async function rotateIP() {
      const response = await axios.get(
        `http://proxy-ip:port/rotate`,
        { auth: { username: 'user', password: 'pass' } }
      );
      console.log('New IP:', response.data);
      return response.data;
    }
    
    // Rotate between scraping tasks
    await rotateIP();
    const result = await axios.get('https://target-site.com', { proxy: proxyConfig });
  7. 07

    Проверить IP

    Убедиться, что запросы маршрутизируются через прокси:

    const axios = require('axios');
    
    const response = await axios.get('https://httpbin.org/ip', {
      proxy: {
        host: 'proxy-ip',
        port: 8080,
        auth: { username: 'user', password: 'pass' },
      },
    });
    console.log(response.data.origin);
    // Should show Polish mobile carrier IP
СОВЕТЫ ЭКСПЕРТОВ

ПРОФЕССИОНАЛЬНЫЕ СОВЕТЫ

Используйте https-proxy-agent или socks-proxy-agent для совместимости

Реализуйте retry-логику с p-retry или экспоненциальной задержкой

Используйте async/await с Promise.all для параллельных запросов

Ротируйте IP между пакетами скрейпинга для обхода блокировок

Устанавливайте реалистичные User-Agent заголовки

ПОПУЛЯРНЫЕ СЦЕНАРИИ

ОТЛИЧНО ПОДХОДИТ ДЛЯ

Скрейпинг API и сбор данныхАвтоматизация мониторинга ценОтслеживание позиций SEOАвтоматизация социальных сетейДоступ к геозависимому контенту

FAQ

01Какая Node.js HTTP-библиотека лучше всего работает с мобильными прокси?+

Axios — самый популярный выбор. Для нативного использования https-proxy-agent и socks-proxy-agent работают со встроенными модулями Node.js.

02Как использовать SOCKS5-прокси в Node.js?+

Установите socks-proxy-agent и передайте его как параметр agent. Формат URL: socks5://user:pass@host:port.

03Как обрабатывать аутентификацию прокси в Node.js?+

Для Axios установите объект конфигурации proxy с auth.username и auth.password. Для agent-клиентов включите данные в URL прокси.

04Можно ли использовать эти прокси с Playwright или Puppeteer?+

Да. Передайте --proxy-server=socks5://host:port как аргумент запуска, затем используйте page.authenticate().

05Как реализовать ротацию IP в Node.js?+

Вызывайте endpoint ротации (GET /rotate на прокси) между задачами. API возвращает новый IP-адрес.

06Как использовать HttpsProxyAgent с Proxy Poland в Node.js?+

const {HttpsProxyAgent} = require('https-proxy-agent'); const agent = new HttpsProxyAgent('http://user:pass@host:port'); fetch(url, {agent}) или https.request({...options, agent}). HttpsProxyAgent обрабатывает HTTP CONNECT к HTTPS-целям через польский IP оператора. Для чистого HTTP используйте http-proxy-agent. Оба пакета поддерживаются TooTallNate. Node 18+ native fetch принимает agent через undici dispatcher (другой API — см. Q&A по undici).

07Какой конфиг proxy для axios с Proxy Poland?+

axios.get(url, {proxy: {host: 'host', port: PORT, auth: {username: 'u', password: 'p'}', protocol: 'http'}'}'). Важно: поле proxy в axios только для HTTP; для SOCKS5 используйте httpsAgent: new SocksProxyAgent('socks5://user:pass@host:port') из socks-proxy-agent и отключите proxy: false. Axios устанавливает заголовки прокси автоматически — не задавайте Proxy-Authorization вручную. Для высокой нагрузки настройте httpAgent: new http.Agent({keepAlive: true}).

08Работает ли got с SOCKS5 от Proxy Poland?+

got не имеет встроенной поддержки SOCKS5 — установите socks-proxy-agent и передайте его: const {SocksProxyAgent} = require('socks-proxy-agent'); got(url, {agent: {http: agent, https: agent}'}). Для HTTP proxy got принимает agent: {https: new HttpsProxyAgent(url)}. Retry, hooks и stream API got работают прозрачно через прокси. Рекомендуется для скраперов благодаря встроенной обработке retry-after при 429.

09Как настроить undici dispatcher для Proxy Poland?+

Node 18+ undici. const {ProxyAgent, setGlobalDispatcher} = require('undici'); setGlobalDispatcher(new ProxyAgent('http://user:pass@host:port')). Теперь native fetch маршрутизируется через польский IP оператора. Для прокси на запрос передайте dispatcher: new ProxyAgent(...) в опции fetch. undici не поддерживает SOCKS5 нативно — для SOCKS5 используйте socks-proxy-agent с node-fetch или axios. ProxyAgent только HTTP CONNECT.

10Как реализовать пул ротируемых прокси в Node.js?+

Создайте const agents = proxies.map(p => new HttpsProxyAgent(p)); let i = 0; const next = () => agents[i++ % agents.length]; fetch(url, {agent: next()}). Для взвешенной ротации или sticky-per-host оберните классом, отслеживающим недавние назначения. Сочетайте с вызовами /rotate API для каждого агента каждые N минут для обновления польского IP оператора. p-limit контролирует параллелизм, чтобы не перегружать один прокси.

11Привязывает ли Playwright в Node.js Proxy Poland к контексту браузера?+

Да — chromium.launch({proxy: {server: 'http://host:port', username, password}'}) для всего браузера. browser.newContext({proxy: {...}'}) для прокси на контекст — это ключевая фича: один экземпляр Chromium, N контекстов, каждый через разный польский mobile proxy 4G/5G. Каждый контекст имеет свои cookies, хранилище и IP. Ставьте N = 5-10 контекстов на браузер; больше — запускайте дополнительные браузеры для контроля памяти.

12Как отправить вызов API ротации из Node.js?+

fetch('https://api.proxypoland.com/rotate?token=' + TOKEN, {method: 'POST'}').then(r => r.json()). Native fetch в Node 18+ работает без импортов. Подождите 10-15 секунд для переподключения модема: await new Promise(r => setTimeout(r, 12000)). Оберните в p-retry для временных сбоев. Не превышайте 1 вызов в 60 секунд на прокси — серверный rate limit возвращает 429.

БОЛЬШЕ ИНТЕГРАЦИЙ

НАСТРОЙТЕ PROXY POLAND С ДРУГИМИ ИНСТРУМЕНТАМИ

ПОПРОБУЙТЕБЕСПЛАТНО НА 1 ЧАС

Настройте Node.js с выделенным мобильным прокси 4G/5G менее чем за 2 минуты. Без кредитной карты. Полный доступ к прокси во время тестового периода.

Без обязательств · Отмена в любое время · Настройка за 2 минуты