node-fetch бағыттаудан кейін прокси агентті өзі таңдасын
HTTP және HTTPS мақсаттары үшін агент функциясын беріңіз, сонда бағыттау сәйкес прокси агентті таңдай алады.
Бірінші URL HTTPS, ал бағытталған URL HTTP болуы мүмкін. Бір агентті бірінші URL-ге байлаудың орнына әр сұраныстың мақсатына қарай агентті таңдаңыз.
ESM қолданбасында импортталған node-fetch бумасы үшін функция беріңіз:
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,
});API URL-ін және прокси соңғы нүктесін ауыстырыңыз. Жалпы делдал арқылы рұқсат етілген жалпы API үшін HTTP прокси тізімі proxyUrl үшін кандидаттар ұсынады. Екі агент бір HTTP прокси тыңдаушысын пайдалана алады; олардың атаулары мақсатқа жіберілген сұранысты білдіреді.
| Таңдаушыға берілген URL | Таңдалған агент |
|---|---|
| https://… | httpsAgent |
| http://… | httpAgent |
Сондықтан бағыттау мақсат протоколын өзгертсе де, функция сәйкес агентті таңдайды. proxyUrl осы шешімге тәуелсіз делдалды сипаттауды жалғастырады.
Агенттерді жүктеме үшін бір рет жасап, қайта пайдаланыңыз. Қайтарылған күйді өңдеп, жауап денесін шақырушы кодта оқыңыз. Бұл агент интерфейсі node-fetch-ке тиесілі; Node-тың кірістірілген fetch-і басқа тасымал интерфейсін пайдаланады.