Express-এর দিক থেকে পরিবেশের proxy নীতি ব্যবহার করা একটি 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 কনস্ট্রাক্টর একটি অপশন অবজেক্ট নেয়। কোনো ওভাররাইড না থাকলে এটি proxy-from-env-এর মাধ্যমে সমর্থিত পরিবেশ নীতি পড়ে এবং URL-এর জন্য নিম্নস্তরের agent বেছে নেয়।

অ্যাপ্লিকেশনের মালিকানাধীন নির্দিষ্ট রুটের জন্য সেই অপশন অবজেক্টের মাধ্যমে নির্বাচন প্রতিস্থাপন করুন:

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

একটি স্থির callback ডিফল্ট পরিবেশের NO_PROXY সিদ্ধান্ত প্রয়োগ করে না। এটি প্রতিস্থাপনের সময় প্রয়োজনীয় সরাসরি ব্যতিক্রমগুলি আপনার নির্বাচকে বাস্তবায়ন করুন।

অনুমোদিত পাবলিক-সার্ভিস অনুরোধের জন্য বিনামূল্যের proxy তালিকা proxyUrl-এর জন্য প্রার্থী দেয়; agent যে প্রোটোকল সমর্থন করে তা বেছে নিন। ফেরত দেওয়া proxy URL-এর স্কিম মধ্যবর্তী প্রোটোকল নির্দেশ করে; https.get এখনও প্রকৃত সার্ভিসের নাম বলে। agent-টি তার কাজের জন্য রেখে দিন এবং বন্ধ করার সময় ধ্বংস করুন।

Express লিসেনার আগত অনুরোধ গ্রহণ করে এবং এই বহির্গামী সংযোগ কনফিগার করে না। Undici-ভিত্তিক fetchও অন্য একটি ট্রান্সপোর্ট ইনপুট ব্যবহার করে: ProxyAgent সহ Undici-র fetch একটি dispatcher নেয়, Node রানটাইমের সাথে সামঞ্জস্যপূর্ণ প্যাকেজ সংস্করণ ব্যবহার করে।

সম্পর্কিত নিবন্ধ