Node-тың HTTPS клиентімен SOCKS агентін қолданыңыз
socks-proxy-agent-ті Node ядросының HTTPS сұранысына қосыңыз және Node агенті мен fetch диспетчерінің айырмашылығын сақтаңыз.
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 интеграциясын бөлек конфигурациялаңыз.