SOCKS destekli bir aracı, Node çekirdeği HTTPS istemcisi için hedef bağlantısını kurabilir. Uygulamada socks-proxy-agent mevcut olduğunda:

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);

Bu genel HTTPS isteği için örnek uç noktayı SOCKS5 proxy listesinden kimliği doğrulanmamış bir adayla değiştirin. Geri çağırma, durumu yazdırdıktan sonra yanıtı boşaltır; uygulama ihtiyaç duyuyorsa gövdeyi orada tüketin. Aracıyı atanan işlemleri için yeniden kullanın, ardından bu istemci politikası kaldırıldığında ve işi bittiğinde yok edin.

Hedef adının nerede çözümleneceğini seçin

socks-proxy-agent'ın URL işleyişinde socks5h hedef ana bilgisayar adı çözümlemesini proxy yoluna bırakır; socks5 ise yerel olarak çözer. Bu, ad yalnızca proxy ağında mevcut olduğunda önemlidir.

HTTPS URL'si web sitesinin kimliğini korur. Aracı, Node o siteye TLS başlatmadan önce SOCKS görüşmesini gerçekleştirir.

Kullanıcı adı/parola hizmeti için kimlik bilgilerini ayrılmış karakterler için URI bileşeni kodlaması kullanarak proxy URL'sine koyun. Tam URL'yi günlüklerin dışında tutun. Hedefin Authorization başlıkları web sitesinin hesabına aittir.

Bu aracı, Node çekirdeğinin HTTP/HTTPS istek API'leriyle çalışır. Node'un fetch'i bir dağıtıcı arayüzü kullanır, bu nedenle o istemcinin desteklenen SOCKS entegrasyonunu ayrı olarak yapılandırın.

İlgili makaleler