Node.js-এ প্রক্সি কীভাবে সেটআপ করবেন (Axios ও Native Fetch)
Updated:
Axios-এর বিল্ট-ইন proxy: { host, port } অপশনটি https:// টার্গেটে ব্যর্থ হয়, কারণ এটি কোনো HTTP CONNECT টানেল তৈরি করে না। Node.js এবং TypeScript রিকোয়েস্টগুলো নির্ঝঞ্ঝাটে VinaProxy-এর অথেনটিকেটেড HTTP(S) প্রক্সির মাধ্যমে পাঠাতে, Axios-এ একটি HttpsProxyAgent (https-proxy-agent) অথবা নেটিভ Node fetch()-এ একটি undici.ProxyAgent ডিসপ্যাচার পাস করুন।
new HttpsProxyAgent('http://user:pass@ip:port')- 1টি IP৪০,০০০₫
- 5+ টি IP৩৫,০০০₫
- 10+ টি IP২৫,০০০₫
- 20+ টি IP২৫,০০০₫
- 50+ টি IP২৫,০০০₫
- 100+ টি IP২৫,০০০₫
- 200+ টি IP২৫,০০০₫
- 500+ টি IP২৫,০০০₫
- 1000+ টি IP২২,০০০₫
- 2000+ টি IP২০,০০০₫
- 1টি IP৪০,০০০₫
- 5+ টি IP৩৫,০০০₫
- 10+ টি IP২৫,০০০₫
- 20+ টি IP২৫,০০০₫
- 50+ টি IP২৫,০০০₫
- 100+ টি IP২৫,০০০₫
- 200+ টি IP২৫,০০০₫
- 500+ টি IP২৫,০০০₫
- 1000+ টি IP২২,০০০₫
- 2000+ টি IP২০,০০০₫
Axios বনাম নেটিভ Node.js fetch() প্রক্সি কনফিগারেশন
উভয় লাইব্রেরিই আপনার VinaProxy ড্যাশবোর্ড থেকে স্ট্যান্ডার্ড http://user:pass@ip:port URL গ্রহণ করে:
| HTTP ক্লায়েন্ট | প্যাকেজ | প্রস্তাবিত কোড স্নিপেট |
|---|---|---|
| Axios | npm i https-proxy-agent | axios.get(url, { httpsAgent: new HttpsProxyAgent('http://user:pass@ip:port'), proxy: false }) |
নেটিভ fetch (Node 18+) | npm i undici | fetch(url, { dispatcher: new ProxyAgent('http://user:pass@ip:port') }) |
| Got | npm i hpagent | got(url, { agent: { https: new HttpsProxyAgent({ proxy: 'http://user:pass@ip:port' }) } }) |
Node.js-এ কানেকশন পুলিং ও টাইমআউট সংক্রান্ত সেরা অনুশীলন
- Axios-এ
httpsAgent-এর পাশাপাশি সর্বদাproxy: falseসেট করুন, যাতে Axios সিস্টেমের বিরোধপূর্ণHTTP_PROXYএনভায়রনমেন্ট ভ্যারিয়েবল উপেক্ষা করে - স্থায়ী keep-alive সকেট পুনরায় ব্যবহারের জন্য আপনার লুপের বাইরে প্রক্সি IP প্রতি একবার
HttpsProxyAgentবাProxyAgentইনস্ট্যানশিয়েট করুন - আমাদের Proxy Format Converter ব্যবহার করে সরাসরি JSON অ্যারে হিসেবে আপনার VinaProxy প্রক্সি তালিকা এক্সপোর্ট করুন
ধাপে ধাপে
- 1
https-proxy-agent (অথবা undici) ইনস্টল করুন
আপনার Node.js প্রজেক্টে
npm install axios https-proxy-agentরান করুন। - 2
HttpsProxyAgent ইনস্ট্যান্স তৈরি করুন
আপনার VinaProxy ক্রেডেনশিয়াল ব্যবহার করে
const agent = new HttpsProxyAgent('http://user:pass@ip:port');ইনিশিয়ালাইজ করুন। - 3
Axios-এ httpsAgent এবং proxy: false পাস করুন
const res = await axios.get('https://vinaproxy.com/api/my-ip', { httpsAgent: agent, proxy: false, timeout: 10000 });কল করুন। - 4
এক্সিট IP যাচাই করুন
রেসপন্সটি আপনার ডেডিকেটেড প্রক্সি IP-এর মাধ্যমে এসেছে কিনা তা নিশ্চিত করতে
res.dataলগ করুন।
সচরাচর জিজ্ঞাসিত প্রশ্নাবলী
HTTPS URL-এ Axios-এর ডিফল্ট `proxy: { host, port, auth }` কেন ব্যর্থ হয়?
Axios-এর বিল্ট-ইন প্রক্সি কনফিগ একটি HTTP CONNECT TLS টানেল খোলার পরিবর্তে একটি সাধারণ HTTP রিকোয়েস্ট পাঠায়। proxy: false-এর সাথে httpsAgent: new HttpsProxyAgent('http://user:pass@ip:port') ব্যবহার করলে এই সমস্যার সমাধান হয়।
Node.js 18/20/22-এ নেটিভ `fetch()` দিয়ে কীভাবে প্রক্সি ব্যবহার করব?
undici থেকে ProxyAgent ইমপোর্ট করুন এবং fetch() অপশনস অবজেক্টে { dispatcher: new ProxyAgent('http://user:pass@ip:port') } পাস করুন।
আমি কি Node.js-এর জন্য আমার প্রক্সি তালিকাকে JSON-এ রূপান্তর করতে পারি?
হ্যাঁ—আমাদের ফ্রি Proxy Format Converter-এ আপনার ip:port:user:pass লাইনগুলো পেস্ট করুন এবং JSON আউটপুট সিলেক্ট করুন।
স্ট্যাটিক IP দিয়ে আপনার Node.js ব্যাকএন্ড ও স্ক্র্যাপার পরিচালনা করুন
7টি দেশ জুড়ে তাৎক্ষণিক আনমিটারড Dedicated IPv4 এবং Static ISP প্রক্সি।
Node.js প্রক্সি কিনুন