Node.js (fetch और axios) में प्रॉक्सी का उपयोग कैसे करें
Node.js 18 और नए वर्जन undici के माध्यम से fetch शिप करते हैं। एक ProxyAgent आपके यूज़रनेम और पासवर्ड के साथ हर रिक्वेस्ट को गेटवे के माध्यम से भेजता है।
चरण
- npm install undici के साथ undici इंस्टॉल करें
- गेटवे URL और अपने लॉगिन के साथ एक ProxyAgent बनाएं
- इसे fetch में dispatcher के रूप में पास करें
- जरूरत पड़ने पर यूज़रनेम में एक देश कोड या सत्र आईडी जोड़ें
उदाहरण कोड
import { ProxyAgent, fetch } from "undici";
const agent = new ProxyAgent({
uri: "http://gw.gbproxies.cc:10000",
token: "Basic " + Buffer.from("USERNAME-cc-de:PASSWORD").toString("base64"),
});
const r = await fetch("https://api.ipify.org?format=json", { dispatcher: agent });
console.log(await r.json());USERNAME और PASSWORD को कंसोल के Proxies पेज से प्रॉक्सी लॉगिन से बदलें। पोर्ट 10000 रेजिडेंशियल HTTP है; नीचे हर प्रोडक्ट के पोर्ट देखें।
टिप्स
- axios के साथ, proxy: { protocol: "http", host, port, auth: { username, password } } सेट करें
- एक साथ कई स्टिकी IPs की आवश्यकता होने पर प्रति सत्र आईडी एक एजेंट बनाएं
सामान्य प्रश्न
क्या यह HTTPS साइट्स के साथ काम करता है?
हां। एजेंट टारगेट के लिए एक CONNECT टनल खोलता है, इसलिए HTTPS एंड-टू-एंड एन्क्रिप्टेड रहता है।