Kuidas seadistada proksit Node.js-is (Axios ja natiivne Fetch)
Updated:
Axiose sisseehitatud valik proxy: { host, port } ei toimi https:// sihtkohtadega, kuna see ei loo HTTP CONNECT tunnelit. Node.js ja TypeScripti päringute sujuvaks suunamiseks läbi VinaProxy autentimisega HTTP(S)-prokside edastage Axiosele HttpsProxyAgent (https-proxy-agent) või Node'i natiivsele fetch()-ile undici.ProxyAgent dispetšer.
new HttpsProxyAgent('http://user:pass@ip:port')- 1 IP40 000 ₫
- 5+ IP-d35 000 ₫
- 10+ IP-d25 000 ₫
- 20+ IP-d25 000 ₫
- 50+ IP-d25 000 ₫
- 100+ IP-d25 000 ₫
- 200+ IP-d25 000 ₫
- 500+ IP-d25 000 ₫
- 1000+ IP-d22 000 ₫
- 2000+ IP-d20 000 ₫
- 1 IP40 000 ₫
- 5+ IP-d35 000 ₫
- 10+ IP-d25 000 ₫
- 20+ IP-d25 000 ₫
- 50+ IP-d25 000 ₫
- 100+ IP-d25 000 ₫
- 200+ IP-d25 000 ₫
- 500+ IP-d25 000 ₫
- 1000+ IP-d22 000 ₫
- 2000+ IP-d20 000 ₫
Axios vs. natiivse Node.js fetch() proksi seadistamine
Mõlemad teegid toetavad teie VinaProxy töölaualt pärinevaid standardseid http://user:pass@ip:port URL-e:
| HTTP-klient | Pakett | Soovitatav koodilõik |
|---|---|---|
| Axios | npm i https-proxy-agent | axios.get(url, { httpsAgent: new HttpsProxyAgent('http://user:pass@ip:port'), proxy: false }) |
Natiivne 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' }) } }) |
Ühenduste koondamise ja ajalõpu parimad tavad Node.js-is
- Määrake Axiose puhul koos
httpsAgent-iga alatiproxy: false, et Axios eiraks vastuolulisi süsteemseidHTTP_PROXYkeskkonnamuutujaid - Püsivate keep-alive soklite taaskasutamiseks initsialiseerige
HttpsProxyAgentvõiProxyAgentväljaspool tsüklit vaid korra iga proksi IP kohta - Eksportige oma VinaProxy prokside nimekiri otse JSON-massiivina, kasutades meie tööriista Proxy Format Converter
Samm-sammult
- 1
Installige https-proxy-agent (või undici)
Käivitage oma Node.js projektis
npm install axios https-proxy-agent. - 2
Looge HttpsProxyAgent eksemplar
Initsialiseerige
const agent = new HttpsProxyAgent('http://user:pass@ip:port');, kasutades oma VinaProxy autentimisandmeid. - 3
Edastage Axiosele httpsAgent ja proxy: false
Kutsuge välja
const res = await axios.get('https://vinaproxy.com/api/my-ip', { httpsAgent: agent, proxy: false, timeout: 10000 });. - 4
Kontrollige väljuvat IP-d
Logige
res.data, et veenduda päringu toimumises teie eraldatud proksi IP kaudu.
Korduma kippuvad küsimused
Miks ebaõnnestub Axiose vaikevalik `proxy: { host, port, auth }` HTTPS URL-ide puhul?
Axiose sisseehitatud proksikonfiguratsioon saadab tavalise HTTP-päringu, selle asemel et avada HTTP CONNECT TLS-tunnel. Selle lahendab httpsAgent: new HttpsProxyAgent('http://user:pass@ip:port') kasutamine koos parameetriga proxy: false.
Kuidas kasutada proksit natiivse `fetch()`-iga versioonides Node.js 18/20/22?
Importige ProxyAgent paketist undici ja edastage { dispatcher: new ProxyAgent('http://user:pass@ip:port') } funktsiooni fetch() suvandite objektis.
Kas ma saan teisendada oma prokside nimekirja Node.js-i jaoks JSON-kujule?
Jah — kleepige oma ip:port:user:pass read meie tasuta tööriista Proxy Format Converter ja valige JSON-väljund.
Tugevdage oma Node.js tagarakendusi ja kraapijaid staatiliste IP-dega
Kohesed piiramatu mahuga Dedicated IPv4 ja Static ISP proksid 7 riigis.
Osta Node.js proksisid