Lit node-fetch de proxy-agent kieze nei in trochferwizing
Brûk in agentfunksje foar HTTP- en HTTPS-bestimmingen, sadat in trochferwizing de passende proxy-agent kieze kin.
De earste URL kin HTTPS wêze en de trochferwiisde URL HTTP. Kies de agent foar de bestimming fan elk fersyk, ynstee fan ien agent oan de earste URL te binen.
Foar it ymportearre node-fetch-pakket yn in ESM-applikaasje, jou in funksje:
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,
});Ferfang de API-URL en it proxy-einpunt. Foar in iepenbiere API dy't tastien is fia in iepenbiere tuskenpersoan, leveret de HTTP-proxy-list kandidaten foar proxyUrl. De beide aginten kinne deselde HTTP-proxy-lústerder brûke; har nammen ferwize nei it fersyk nei de bestimming.
| URL trochjûn oan de selektor | Keazen agent |
|---|---|
| https://… | httpsAgent |
| http://… | httpAgent |
De funksje kiest dus noch altyd de oerienkommende agent as in trochferwizing it protokol fan de bestimming feroaret. proxyUrl bliuwt de tuskenpersoan beskriuwe, ûnôfhinklik fan dy beslissing.
Meitsje de aginten ien kear foar de wurklêst en brûk se opnij. Behannelje de weromjûne status en lês it antwurdlichem yn 'e oanroppende koade. Dizze agent-ynterface heart by node-fetch; de ynboude fetch fan Node brûkt in oare transport-ynterface.