යළි-යොමුවකින් පසු node-fetch ට proxy agent තෝරා ගැනීමට ඉඩ දෙන්න
HTTP සහ HTTPS ගමනාන්ත සඳහා agent function එකක් ලබා දෙන්න, එවිට යළි-යොමුවට ගැළපෙන proxy agent තෝරා ගත හැක.
පළමු URL එක HTTPS විය හැකි අතර යළි-යොමු කළ URL එක HTTP විය හැක. එක් agent එකක් පළමු URL එකට බැඳ තැබීම වෙනුවට සෑම ඉල්ලීමකම ගමනාන්තය අනුව agent තෝරන්න.
ESM යෙදුමක ආයාත කළ node-fetch පැකේජය සඳහා function එකක් සපයන්න:
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 එක සහ proxy අන්ත ලක්ෂ්යය වෙනස් කරන්න. පොදු මැදිහත්කරුවෙකු හරහා අවසර ලත් පොදු API එකක් සඳහා HTTP proxy ලැයිස්තුව proxyUrl සඳහා අපේක්ෂකයින් සපයයි. agent දෙකටම එකම HTTP proxy ශ්රාවකය භාවිත කළ හැක; ඒවායේ නම් ගමනාන්තයට යන ඉල්ලීම හඟවයි.
| තේරීම්කරුට ලබා දුන් URL | තෝරාගත් agent |
|---|---|
| https://… | httpsAgent |
| http://… | httpAgent |
එබැවින් යළි-යොමුව ගමනාන්තයේ ප්රොටොකෝලය වෙනස් කළත් function එක ගැළපෙන agent තෝරයි. proxyUrl එම තීරණයෙන් ස්වාධීනව මැදිහත්කරු විස්තර කරයි.
වැඩ භාරය සඳහා agent දෙක එක් වරක් සාදා නැවත භාවිත කරන්න. ආපසු දුන් තත්ත්වය හසුරුවා, ඇමතුම් කේතයේ ප්රතිචාර බඳ කියවන්න. මෙම agent අතුරුමුහුණත node-fetch ට අයත් ය; Node හි ආවේණික fetch වෙනත් ප්රවාහන අතුරුමුහුණතක් භාවිත කරයි.