Déi éischt URL kann HTTPS sinn an déi ëmgeleet URL HTTP. Wiel den Agent no dem Zil vun all Ufro, amplaz een Agent un déi éischt URL ze bannen.

Fir de importéierten node-fetch-Paket an enger ESM-Applikatioun, gëff eng Funktioun:

import fetch from 'node-fetch';
import { HttpProxyAgent } from 'http-proxy-agent';
import { HttpsProxyAgent } from 'https-proxy-agent';

const proxyUrl = 'http://proxy.example:8080';
const httpAgent = new HttpProxyAgent(proxyUrl);
const httpsAgent = new HttpsProxyAgent(proxyUrl);

const response = await fetch('https://api.example/', {
  agent: url => url.protocol === 'http:' ? httpAgent : httpsAgent,
});

Ersetz d'API-URL an den Proxy-Endpunkt. Fir eng ëffentlech API, déi iwwer en ëffentlechen Intermédiaire erlaabt ass, liwwert d'HTTP-Proxy-Lëscht Kandidaten fir proxyUrl. Déi zwee Agente kënnen de selwechten HTTP-Proxy-Listener benotzen; hir Nimm bezéien sech op d'Ufro un d'Zil.

URL, déi un den Auswieler geetAusgewielten Agent
https://…httpsAgent
http://…httpAgent

D'Funktioun wielt deemno nach ëmmer den entspriechende Agent, wann eng Ëmleitung de Protokoll vum Zil ännert. proxyUrl beschreift weider den Intermédiaire, onofhängeg vun där Entscheedung.

Erstell d'Agente meng Kéier fir d'Aarbechtslaascht a benotz se erëm. Behandel de Status, deen zréckkënnt, a lies de Äntwertkierper am opruffende Code. Dës Agent-Interface gehéiert zu node-fetch; de agebaute fetch vun Node benotzt eng aner Transport-Interface.

Ähnlech Artikelen