Агент с поддръжка на 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 за дестинацията принадлежат на акаунта на уебсайта.

Този агент работи с основните API за HTTP/HTTPS заявки на Node. fetch на Node използва интерфейс за dispatcher, затова конфигурирайте поддържаната SOCKS интеграция на този клиент отделно.

Подобни статии