Til et HTTPS-kald på Express-siden, der bruger miljøets proxy-politik:

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 nuværende ProxyAgent-konstruktør tager et mulighedsobjekt. Uden tilsidesættelse læser den den understøttede miljøpolitik via proxy-from-env og vælger agenten på lavere niveau til URL'en.

Til en fast rute, som applikationen ejer, skal du erstatte valget via det mulighedsobjekt:

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

En konstant callback anvender ikke standardmiljøets NO_PROXY-beslutninger. Implementer de nødvendige direkte undtagelser i din vælger, når du erstatter den.

Til et tilladt offentligt tjenestekald leverer listen over gratis proxyer kandidater til proxyUrl; vælg en protokol, som agenten understøtter. Skemaet i den returnerede proxy-URL angiver mellemledsprotokollen; https.get navngiver stadig den rigtige tjeneste. Behold agenten til dens arbejdsbyrde, og ødelæg den ved nedlukning.

Express-lytteren accepterer indgående anmodninger og konfigurerer ikke denne udgående forbindelse. En Undici-baseret fetch bruger også en anden transportindgang: Undicis fetch med en ProxyAgent tager en dispatcher og bruger en pakkeudgivelse, der er kompatibel med Node-runtime.

Relaterede artikler