Expressin puolen HTTPS-kutsulle, joka käyttää ympäristön proxy-käytäntöä:

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

Nykyinen ProxyAgent-konstruktori ottaa asetusobjektin. Ilman ohitusta se lukee tuetun ympäristökäytännön proxy-from-env-moduulin kautta ja valitsee URL:lle alemman tason agentin.

Sovelluksen omistamalle kiinteälle reitille korvaa valinta kyseisellä asetusobjektilla:

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

Vakio-callback ei sovella oletusympäristön NO_PROXY-päätöksiä. Toteuta tarvittavat suorat poikkeukset valitsimessasi, kun korvaat sen.

Sallitulle julkisen palvelun kutsuille ilmainen proxy-luettelo tarjoaa ehdokkaita proxyUrl:lle; valitse protokolla, jota agentti tukee. Palautetun proxy-URL:n skeema ilmaisee välittäjän protokollan; https.get nimeää yhä varsinaisen palvelun. Pidä agentti työkuormaansa varten ja tuhoa se sammutettaessa.

Express-kuuntelija vastaanottaa saapuvia pyyntöjä eikä määritä tätä lähtevää yhteyttä. Undici-pohjainen fetch käyttää myös toista siirtotuloa: Undicin fetch ProxyAgentilla ottaa dispatcherin ja käyttää Noden ajonaikaisen kanssa yhteensopivaa pakettijulkaisua.

Aiheeseen liittyvät artikkelit