Kako nastaviti proxy v Node.js (Axios in vgrajeni fetch)
Updated:
Axiosova vgrajena možnost proxy: { host, port } pri ciljih https:// odpove, ker ne vzpostavi predora HTTP CONNECT. Za brezhibno usmerjanje zahtev Node.js in TypeScript prek avtenticiranih HTTP(S) proxyjev ponudnika VinaProxy posredujte HttpsProxyAgent (https-proxy-agent) v Axios ali dispečer undici.ProxyAgent v vgrajeni Node fetch().
new HttpsProxyAgent('http://user:pass@ip:port')- 1 IP40.000 ₫
- 5+ IP-jev35.000 ₫
- 10+ IP-jev25.000 ₫
- 20+ IP-jev25.000 ₫
- 50+ IP-jev25.000 ₫
- 100+ IP-jev25.000 ₫
- 200+ IP-jev25.000 ₫
- 500+ IP-jev25.000 ₫
- 1000+ IP-jev22.000 ₫
- 2000+ IP-jev20.000 ₫
- 1 IP40.000 ₫
- 5+ IP-jev35.000 ₫
- 10+ IP-jev25.000 ₫
- 20+ IP-jev25.000 ₫
- 50+ IP-jev25.000 ₫
- 100+ IP-jev25.000 ₫
- 200+ IP-jev25.000 ₫
- 500+ IP-jev25.000 ₫
- 1000+ IP-jev22.000 ₫
- 2000+ IP-jev20.000 ₫
Primerjava konfiguracije proxyja: Axios in vgrajeni Node.js fetch()
Obe knjižnici sprejemata standardne naslove URL http://user:pass@ip:port z vaše nadzorne plošče VinaProxy:
| Odjemalec HTTP | Paket | Priporočen izsek kode |
|---|---|---|
| Axios | npm i https-proxy-agent | axios.get(url, { httpsAgent: new HttpsProxyAgent('http://user:pass@ip:port'), proxy: false }) |
Vgrajeni 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' }) } }) |
Najboljše prakse za združevanje povezav in časovne omejitve v Node.js
- V Axiosu ob
httpsAgentvedno nastaviteproxy: false, da Axios prezre nasprotujoče si sistemske okoljske spremenljivkeHTTP_PROXY - Ustvarite primerek
HttpsProxyAgentaliProxyAgentenkrat na posamezni proxy IP zunaj zanke, da ponovno uporabite trajne vtičnike keep-alive - Izvozite svoj seznam proxyjev VinaProxy neposredno kot polje JSON z našim orodjem Proxy Format Converter
Navodila po korakih
- 1
Namestite https-proxy-agent (ali undici)
V svojem projektu Node.js zaženite
npm install axios https-proxy-agent. - 2
Ustvarite primerek HttpsProxyAgent
Inicializirajte
const agent = new HttpsProxyAgent('http://user:pass@ip:port');s svojimi prijavnimi podatki za VinaProxy. - 3
Posredujte httpsAgent in proxy: false v Axios
Pokličite
const res = await axios.get('https://vinaproxy.com/api/my-ip', { httpsAgent: agent, proxy: false, timeout: 10000 });. - 4
Preverite izhodni IP
Zapišite
res.datav dnevnik, da potrdite, da je odziv prispel prek vašega namenskega proxy IP-ja.
Pogosta vprašanja
Zakaj privzeta Axiosova nastavitev `proxy: { host, port, auth }` pri naslovih URL HTTPS odpove?
Axiosova vgrajena konfiguracija proxyja pošlje navadno zahtevo HTTP namesto odprtja predora TLS HTTP CONNECT. Težavo odpravite z uporabo httpsAgent: new HttpsProxyAgent('http://user:pass@ip:port') z nastavitvijo proxy: false.
Kako uporabim proxy z vgrajenim `fetch()` v Node.js 18/20/22?
Uvozite ProxyAgent iz paketa undici in posredujte { dispatcher: new ProxyAgent('http://user:pass@ip:port') } v objektu z možnostmi funkcije fetch().
Ali lahko svoj seznam proxyjev pretvorim v JSON za Node.js?
Da – prilepite svoje vrstice ip:port:user:pass v naš brezplačni Proxy Format Converter in izberite izhodni format JSON.
Opremite svoja zaledja in strgalnike Node.js s statičnimi IP-ji
Takojšnji neomejeni namenski IPv4 in statični ISP proxyji v 7 državah.
Kupite proxyje za Node.js