ပတ်ဝန်းကျင်၏ proxy မူဝါဒကို အသုံးပြုသော Express ဘက်မှ HTTPS ခေါ်ဆိုမှုအတွက်:

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 constructor သည် options object ကို လက်ခံသည်။ မည်သည့် အစားထိုးမှုမျှ မရှိပါက ၎င်းသည် proxy-from-env မှတစ်ဆင့် ပံ့ပိုးထားသော ပတ်ဝန်းကျင် မူဝါဒကို ဖတ်ပြီး ထို URL အတွက် အဆင့်နိမ့် agent ကို ရွေးချယ်သည်။

application ပိုင်ဆိုင်သော ပုံသေလမ်းကြောင်းအတွက် ထို options object မှတစ်ဆင့် ရွေးချယ်မှုကို အစားထိုးပါ:

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

ကိန်းသေ callback သည် မူလပတ်ဝန်းကျင်၏ NO_PROXY ဆုံးဖြတ်ချက်များကို မကျင့်သုံးပါ။ ၎င်းကို အစားထိုးစဉ် လိုအပ်သော တိုက်ရိုက် ကြွင်းကျန်မှုများကို သင့် selector တွင် အကောင်အထည်ဖော်ပါ။

ခွင့်ပြုထားသော အများသူငှာ ဝန်ဆောင်မှု ခေါ်ဆိုမှုအတွက် အခမဲ့ proxy စာရင်း သည် proxyUrl အတွက် ကိုယ်စားလှယ်များကို ပေးသည်။ agent ပံ့ပိုးသော protocol ကို ရွေးပါ။ ပြန်လာသော proxy URL ၏ scheme သည် ကြားခံ၏ protocol ကို ဖော်ပြသည်။ https.get သည် အမှန်တကယ် ဝန်ဆောင်မှုကို အမည်ပေးဆဲ ဖြစ်သည်။ agent ကို ၎င်း၏ အလုပ်အတွက် ထိန်းထားပြီး ပိတ်ချိန်တွင် ဖျက်ဆီးပါ။

Express listener သည် ဝင်လာသော တောင်းဆိုမှုများကို လက်ခံပြီး ဤအပြင်ထွက် ချိတ်ဆက်မှုကို မသတ်မှတ်ပါ။ Undici အခြေပြု fetch သည် အခြား transport input ကိုလည်း အသုံးပြုသည်: ProxyAgent ဖြင့် Undici fetch သည် dispatcher ကို လက်ခံပြီး Node runtime နှင့် ကိုက်ညီသော package ထုတ်ဝေမှုကို အသုံးပြုသည်။

ဆက်စပ်ဆောင်းပါးများ