Ինչպես կարգավորել պրոքսի Node.js-ում (Axios և Native Fetch)
Updated:
Axios-ի ներկառուցված proxy: { host, port } կարգավորումը չի աշխատում https:// հասցեների դեպքում, քանի որ չի ստեղծում HTTP CONNECT թունել: Node.js և TypeScript հարցումները VinaProxy-ի նույնականացվող HTTP(S) պրոքսիներով անխափան ուղղորդելու համար փոխանցեք HttpsProxyAgent (https-proxy-agent) Axios-ին կամ undici.ProxyAgent դիսպետչեր՝ ներկառուցված Node fetch()-ին:
new HttpsProxyAgent('http://user:pass@ip:port')- 1 IP40 000 ₫
- 5+ IP35 000 ₫
- 10+ IP25 000 ₫
- 20+ IP25 000 ₫
- 50+ IP25 000 ₫
- 100+ IP25 000 ₫
- 200+ IP25 000 ₫
- 500+ IP25 000 ₫
- 1000+ IP22 000 ₫
- 2000+ IP20 000 ₫
- 1 IP40 000 ₫
- 5+ IP35 000 ₫
- 10+ IP25 000 ₫
- 20+ IP25 000 ₫
- 50+ IP25 000 ₫
- 100+ IP25 000 ₫
- 200+ IP25 000 ₫
- 500+ IP25 000 ₫
- 1000+ IP22 000 ₫
- 2000+ IP20 000 ₫
Պրոքսիի կարգավորումը Axios-ում և ներկառուցված Node.js fetch()-ում
Երկու գրադարաններն էլ ընդունում են ստանդարտ http://user:pass@ip:port URL-ներ ձեր VinaProxy վահանակից.
| HTTP հաճախորդ | Փաթեթ | Առաջարկվող կոդի նմուշ |
|---|---|---|
| Axios | npm i https-proxy-agent | axios.get(url, { httpsAgent: new HttpsProxyAgent('http://user:pass@ip:port'), proxy: false }) |
Native 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' }) } }) |
Միացումների համախմբման (pooling) և timeout-ի լավագույն փորձը Node.js-ում
- Միշտ նշեք
proxy: falsehttpsAgent-ի հետ միասին Axios-ում, որպեսզի այն անտեսի համակարգային հակասականHTTP_PROXYմիջավայրի փոփոխականները - Ստեղծեք
HttpsProxyAgentկամProxyAgentօբյեկտը ցիկլից դուրս՝ յուրաքանչյուր պրոքսի IP-ի համար մեկ անգամ, որպեսզի վերաօգտագործեք մշտական keep-alive սոկետները - Արտահանեք ձեր VinaProxy պրոքսիների ցանկը անմիջապես որպես JSON զանգված՝ օգտագործելով մեր Proxy Format Converter գործիքը
Քայլ առ քայլ
- 1
Տեղադրեք https-proxy-agent (կամ undici)
Գործարկեք
npm install axios https-proxy-agentձեր Node.js նախագծում: - 2
Ստեղծեք HttpsProxyAgent-ի օբյեկտը
Ինիցիալիզացրեք
const agent = new HttpsProxyAgent('http://user:pass@ip:port');՝ օգտագործելով ձեր VinaProxy-ի մուտքի տվյալները: - 3
Փոխանցեք httpsAgent և proxy: false կարգավորումները Axios-ին
Կանչեք
const res = await axios.get('https://vinaproxy.com/api/my-ip', { httpsAgent: agent, proxy: false, timeout: 10000 });: - 4
Ստուգեք ելքային IP-ն
Արտածեք
res.data-ն՝ համոզվելու համար, որ պատասխանն անցել է ձեր հատկացված պրոքսի IP-ով:
Հաճախ տրվող հարցեր
Ինչո՞ւ Axios-ի լռելյայն `proxy: { host, port, auth }` կարգավորումը չի աշխատում HTTPS URL-ների հետ:
Axios-ի ներկառուցված պրոքսիի կարգավորումն ուղարկում է սովորական HTTP հարցում՝ HTTP CONNECT TLS թունել բացելու փոխարեն: Դա շտկվում է httpsAgent: new HttpsProxyAgent('http://user:pass@ip:port') և proxy: false օգտագործելով:
Ինչպե՞ս օգտագործել պրոքսի ներկառուցված `fetch()`-ի հետ Node.js 18/20/22-ում:
Ներմուծեք ProxyAgent-ը undici-ից և փոխանցեք { dispatcher: new ProxyAgent('http://user:pass@ip:port') } fetch()-ի ընտրանքների օբյեկտում:
Կարո՞ղ եմ իմ պրոքսիների ցանկը փոխակերպել JSON-ի Node.js-ի համար:
Այո, տեղադրեք ձեր ip:port:user:pass տողերը մեր անվճար Proxy Format Converter գործիքում և ընտրեք JSON ձևաչափը:
Հզորացրեք ձեր Node.js բեքենդներն ու սքրեյփերները ստատիկ IP-ներով
Անսահմանափակ տրաֆիկով Dedicated IPv4 և Static ISP պրոքսիների ակնթարթային ակտիվացում 7 երկրներում:
Գնել Node.js պրոքսիներ