@porcospinocarryon

Как отправить запрос через proxy?

У меня есть proxy адрес, который выглядит примерно так: 185.233.80.131 : 9122 : GVF7nV : kbh32Z (ip адрес : порт : логин : пароль). Для отправки запроса через proxy я использую Tunnel.

const tunnelingAgent = tunnel.httpOverHttps({
  proxy: getProxyOptions(),
});

const req = https.request(
  {
    host: 'url сайта, к которому хочу обратиться через proxy',
    port: 443,
    agent: tunnelingAgent,
  },
  (res) => {
    console.log(res);
  }
);

function getProxyOptions() {
  return {
    host: '185.233.80.131',
    port: 9122,
    proxyAuth: 'GVF7nV:kbh32Z'
  };
}


Но вылетает ошибка: Error: tunneling socket could not be established, cause=write EPROTO 12248:error:1408F10B:SSL routines:ssl3_get_record:wrong version number:c:\ws\deps\openssl\openssl\ssl\record\ssl3_record.c:332

Судя по ответам в интернете, такая ошибка говорит об использовании в адресе https, в то время как при обращении к proxy нужно использовать http.

Но когда пытаюсь записать примерно вот так:
function getProxyOptions() {
  return {
    host: 'http://185.233.80.131',
    port: 9122,
    proxyAuth: 'GVF7nV:kbh32Z'
  };
}

Выдаёт ошибку:
Error: tunneling socket could not be established, cause=getaddrinfo ENOTFOUND 185.233.80.131

Подскажите, пожалуйста, как решить эту проблему?
  • Вопрос задан
  • 190 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы