Користете SOCKS агент со HTTPS клиентот на Node
Поврзете го socks-proxy-agent со основното HTTPS барање на Node и зачувајте ја разликата помеѓу Node агент и fetch диспечер.
Агент со SOCKS поддршка може да ја воспостави врската со дестинацијата за основниот HTTPS клиент на Node. Кога 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);
Заменете ја примерната крајна точка со неавтентифициран кандидат од списокот со SOCKS5 прокси за ова јавно HTTPS барање. Повратниот повик го исцрпува одговорот по печатење на статусот; консумирајте го телото таму ако на апликацијата ѝ треба. Користете го агентот повторно за неговите доделени операции, потоа уништете го кога таа клиентска политика се повлекува и неговата работа е завршена.
Изберете каде се решава името на дестинацијата
Во URL ракувањето на socks-proxy-agent, socks5h го остава решавањето на името на домаќинот на дестинацијата на прокси патеката; socks5 го решава локално. Ова е важно кога името е достапно само на мрежата на проксито.
HTTPS URL-то го зачувува идентитетот на веб-страницата. Агентот врши SOCKS преговори пред Node да започне TLS кон таа страница.
За услуга со корисничко име/лозинка, ставете ги акредитивите во прокси URL-то користејќи URI-компонентно кодирање за резервирани знаци. Чувајте го целото URL надвор од дневниците. Заглавијата Authorization на дестинацијата припаѓаат на сметката на веб-страницата.
Овој агент работи со основните HTTP/HTTPS API за барања на Node. fetch на Node користи интерфејс за диспечер, затоа конфигурирајте ја поддржаната SOCKS интеграција на тој клиент одделно.