Vir 'n HTTPS-oproep aan die Express-kant wat die omgewing se proxybeleid gebruik:

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

Die huidige ProxyAgent-konstruktor neem 'n opsie-objek. Sonder 'n oorheersing lees dit die ondersteunde omgewingsbeleid deur proxy-from-env en kies die laer-vlak agent vir die URL.

Vir 'n vaste roete wat die toepassing besit, vervang die keuse deur daardie opsie-objek:

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

'n Konstante terugroep pas nie die verstekomgewing se NO_PROXY-besluite toe nie. Implementeer die vereiste direkte uitsonderings in jou kieser wanneer jy dit vervang.

Vir 'n toegelate publieke diens-oproep verskaf die gratis proxy-lys kandidate vir proxyUrl; kies 'n protokol wat die agent ondersteun. Die skema van die teruggekeerde proxy-URL dui die tussenliggende protokol aan; https.get noem steeds die werklike diens. Hou die agent vir sy werklading en vernietig dit by afsluiting.

Die Express-ontvanger aanvaar inkomende versoeke en konfigureer nie hierdie uitgaande verbinding nie. 'n Undici-gebaseerde fetch gebruik ook 'n ander vervoerinvoer: Undici se fetch met 'n ProxyAgent neem 'n dispatcher, met 'n pakketweergawe wat met die Node-runtime versoenbaar is.

Verwante artikels