For et HTTPS-kall på Express-siden som bruker miljøets proxy-policy:

import https from 'node:https';
import { ProxyAgent } from 'proxy-agent';

const agent = new ProxyAgent();
const request = https.get('https://service.example/data', { agent }, response => {
  console.log(response.statusCode);
  response.resume();
});
request.on('error', error => console.error(error.message));

Den gjeldende ProxyAgent-konstruktøren tar et alternativobjekt. Uten overstyring leser den støttet miljøpolicy gjennom proxy-from-env og velger agenten på lavere nivå for URL-en.

For en fast rute som applikasjonen eier, erstatt valget gjennom det alternativobjektet:

new ProxyAgent({ getProxyForUrl: () => proxyUrl })

En konstant callback anvender ikke NO_PROXY-beslutningene til standardmiljøet. Implementer de nødvendige direkte unntakene i velgeren din når du erstatter den.

For et tillatt offentlig tjenestekall gir listen over gratis proxyer kandidater for proxyUrl; velg en protokoll som agenten støtter. Skjemaet i proxy-URL-en som returneres angir protokollen til mellomleddet; https.get navngir fortsatt den virkelige tjenesten. Behold agenten for arbeidsmengden og ødelegg den ved avslutning.

Express-lytteren mottar innkommende forespørsler og konfigurerer ikke denne utgående forbindelsen. fetch basert på Undici bruker også en annen transportinngang: Undici fetch med ProxyAgent tar en dispatcher, med en pakkeutgivelse som er kompatibel med Node-kjøretiden.

Relaterte artikler