Как отправить запрос через 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

Подскажите, пожалуйста, как решить эту проблему?

UPDATE: Если считать проблемой то, что я не мог отправить запрос через proxy, то эту проблему я решил. Для этого я использовал библиотеку node-fetch. Теперь отправление запроса выглядит так:

import * as url from 'url';
import fetch, { RequestInit } from 'node-fetch';
import { Agent } from 'http';

const HttpsProxyAgent = require('https-proxy-agent');

const agentOptions: url.UrlWithStringQuery = url.parse('http://185.233.80.131:9122');
agentOptions.auth = 'GVF7nV:kbh32Z';

const agent: Agent = new HttpsProxyAgent(agentOptions);
const requestInit: RequestInit = { agent };

fetch('https://example.com', requestInit);

Ответы (0 шт):