Koristite SOCKS agent s Node HTTPS klijentom
Povežite socks-proxy-agent s osnovnim Node HTTPS zahtjevom i sačuvajte razliku između Node agenta i fetch dispečera.
Agent sa SOCKS podrškom može uspostaviti vezu s odredištem za osnovni Node HTTPS klijent. Kada je socks-proxy-agent dostupan u aplikaciji:
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);
Zamijenite primjer endpointa neautentificiranim kandidatom iz liste SOCKS5 proxyja za ovaj javni HTTPS zahtjev. Povratni poziv isprazni odgovor nakon ispisa statusa; konzumirajte tijelo tamo ako aplikaciji treba. Ponovno koristite agent za dodijeljene operacije, a zatim ga uništite kada se ta klijentska politika ukine i njegov rad završi.
Odaberite gdje se ime odredišta razrješava
U rukovanju URL-om socks-proxy-agenta socks5h prepušta razrješavanje imena hosta odredišta proxy putu; socks5 ga razrješava lokalno. To je važno kada je ime dostupno samo na proxy mreži.
HTTPS URL čuva identitet web stranice. Agent obavlja SOCKS pregovore prije nego Node započne TLS prema toj stranici.
Za uslugu s korisničkim imenom i lozinkom stavite vjerodajnice u proxy URL koristeći URI-komponentno kodiranje rezervisanih znakova. Držite cijeli URL izvan zapisa. Zaglavlja Authorization odredišta pripadaju računu web stranice.
Ovaj agent radi s osnovnim Node HTTP/HTTPS API-jima za zahtjeve. Node fetch koristi interfejs dispečera, pa konfigurirajte podržanu SOCKS integraciju tog klijenta odvojeno.