SOCKS қолдайтын агент Node ядросының HTTPS клиенті үшін межелі қосылымды орната алады. Қолданбада socks-proxy-agent болған кезде:

const https = require('node:https');
const { SocksProxyAgent } = require('socks-proxy-agent');

const agent = new SocksProxyAgent('socks5h://proxy.example:1080');
const request = https.get('https://www.example.com/', {
  agent,
  signal: AbortSignal.timeout(15000),
}, (response) => {
  console.log(response.statusCode);
  response.on('error', console.error);
  response.resume();
});
request.on('error', console.error);

Бұл жария HTTPS сұранысы үшін мысалдағы соңғы нүктені SOCKS5 прокси тізімінен аутентификацияланбаған кандидатпен ауыстырыңыз. Кері шақыру күйді басып шығарғаннан кейін жауапты таусыз; қолданбаға қажет болса, денені сол жерде тұтыныңыз. Агентті өзіне тағайындалған операциялар үшін қайта пайдаланыңыз, содан кейін бұл клиент саясаты тоқтатылып, жұмысы аяқталғанда оны жойыңыз.

Мақсатты атаудың қайда шешілетінін таңдаңыз

socks-proxy-agent-тің URL өңдеуінде socks5h мақсатты хост атауын шешуді прокси жолына қалдырады; socks5 оны жергілікті шешеді. Бұл атау тек прокси желісінде қолжетімді болғанда маңызды.

HTTPS URL веб-сайттың сәйкестігін сақтайды. Агент Node сол сайтқа TLS бастамай тұрып SOCKS келіссөзін жүргізеді.

Пайдаланушы аты/құпия сөзі бар қызмет үшін тіркелгі деректерін прокси URL-іне резервтелген таңбалар үшін URI құрамдас кодтауын пайдаланып қосыңыз. Толық URL-ды журналдардан тыс ұстаңыз. Межелі мақсаттың Authorization тақырыптары веб-сайт тіркелгісіне тиесілі.

Бұл агент Node ядросының HTTP/HTTPS сұраныс API-лерімен жұмыс істейді. Node-тың fetch-і диспетчер интерфейсін пайдаланады, сондықтан сол клиенттің қолдайтын SOCKS интеграциясын бөлек конфигурациялаңыз.

Қатысты мақалалар