د Express اړخ HTTPS غوښتنې لپاره چې د چاپېریال د proxy تګلاره کاروي:

import https from 'node:https';
import { ProxyAgent } from 'proxy-agent';

const agent = new ProxyAgent();
const request = https.get('https://service.example/data', { agent }, response => {
  console.log(response.statusCode);
  response.resume();
});
request.on('error', error => console.error(error.message));

اوسنی ProxyAgent جوړونکی د اختیارونو object اخلي. پرته له بدلون څخه هغه د proxy-from-env له لارې ملاتړ شوې چاپېریالي تګلاره لولي او د دې URL لپاره ټیټې کچې agent ټاکي.

د اپلیکیشن په ملکیت کې د ثابتې لارې لپاره، د همدې اختیارونو object له لارې ټاکنه بدله کړئ:

new ProxyAgent({ getProxyForUrl: () => proxyUrl })

ثابت callback د اصلي چاپېریال NO_PROXY پرېکړې نه پلي کوي. کله چې یې بدلوئ، اړینې مستقیمې استثناوې په خپل ټاکونکي کې پلي کړئ.

د اجازه ورکړل شوې عامه خدمت غوښتنې لپاره، د وړیا proxy لړلیک د proxyUrl لپاره نوماندان برابروي؛ هغه protocol وټاکئ چې agent یې ملاتړ کوي. د بیرته راغلي proxy URL scheme د منځګړي protocol ښیي؛ https.get لا هم ریښتیني خدمت نوموي. agent د خپل کار لپاره وساتئ او د بندېدو پر مهال یې له منځه یوسئ.

د Express listener راتلونکې غوښتنې مني او دا وتونکی اړیکه نه تنظیموي. Undici ته بنسټیز fetch هم بله transport input کاروي: ProxyAgent سره Undici fetch dispatcher اخلي، د Node runtime سره سم package خپرونه کاروي.

اړوندې مقالې