Qayta yoʻnaltirishdan keyin node-fetch proxy agentni oʻzi tanlasin
HTTP va HTTPS manzillari uchun agent funksiyasini bering, shunda qayta yoʻnaltirish mos proxy agentni tanlay oladi.
Birinchi URL HTTPS, qayta yoʻnaltirilgan URL esa HTTP boʻlishi mumkin. Bitta agentni birinchi URL ga bogʻlash oʻrniga har bir soʻrov manziliga qarab agentni tanlang.
ESM ilovasida import qilingan node-fetch paketi uchun funksiya bering:
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 va proxy oxirgi nuqtasini almashtiring. Ommaviy vositachi orqali ruxsat etilgan ommaviy API uchun HTTP proxy roʻyxati proxyUrl uchun nomzodlar beradi. Ikki agent bir xil HTTP proxy tinglovchisidan foydalanishi mumkin; ularning nomlari manzilga yuborilgan soʻrovni bildiradi.
| Tanlagichga berilgan URL | Tanlangan agent |
|---|---|
| https://… | httpsAgent |
| http://… | httpAgent |
Shuning uchun qayta yoʻnaltirish manzil protokolini oʻzgartirsa ham funksiya mos agentni tanlaydi. proxyUrl bu qarordan mustaqil ravishda vositachini tavsiflaydi.
Agentlarni ish yuki uchun bir marta yarating va qayta ishlating. Qaytarilgan holatni qayta ishlang va javob tanasini chaqiruvchi kodda oʻqing. Bu agent interfeysi node-fetch ga tegishli; Node ichidagi fetch boshqa transport interfeysidan foydalanadi.