Bí a ṣe lè ṣe ètò proxy ní Node.js (Axios & Native Fetch)
Updated:
Àṣàyàn proxy: { host, port } ti Axios kùnà lórí àwọn ibi àfojúsùn https:// nítorí kò ṣí ọ̀nà àbájáde HTTP CONNECT. Láti darí àwọn ìbéèrè Node.js àti TypeScript láìsí ìṣòro gba àwọn proxy HTTP(S) tí ó ní ìfọwọ́sí ti VinaProxy, fi HttpsProxyAgent (https-proxy-agent) ránṣẹ́ sí Axios tàbí olùpín undici.ProxyAgent sí Node fetch() àbínibí.
new HttpsProxyAgent('http://user:pass@ip:port')- 1 IP₫40,000
- 5+ IPs₫35,000
- 10+ IPs₫25,000
- 20+ IPs₫25,000
- 50+ IPs₫25,000
- 100+ IPs₫25,000
- 200+ IPs₫25,000
- 500+ IPs₫25,000
- 1000+ IPs₫22,000
- 2000+ IPs₫20,000
- 1 IP₫40,000
- 5+ IPs₫35,000
- 10+ IPs₫25,000
- 20+ IPs₫25,000
- 50+ IPs₫25,000
- 100+ IPs₫25,000
- 200+ IPs₫25,000
- 500+ IPs₫25,000
- 1000+ IPs₫22,000
- 2000+ IPs₫20,000
Ìṣètò proxy: Axios lòdì sí fetch() àbínibí ti Node.js
Àwọn láíbírárì méjèèjì gba àwọn URL http://user:pass@ip:port tó ṣe déédé láti inú dashboard VinaProxy rẹ:
| Oníbàárà HTTP | Package | Àkọsílẹ̀ Kóòdù Tí A Dábàá |
|---|---|---|
| Axios | npm i https-proxy-agent | axios.get(url, { httpsAgent: new HttpsProxyAgent('http://user:pass@ip:port'), proxy: false }) |
fetch àbínibí (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' }) } }) |
Àwọn àṣà tó dára jùlọ fún connection pooling & timeout ní Node.js
- Máa fi
proxy: falsesí ẹ̀gbẹ́httpsAgentnígbà gbogbo nínú Axios kí Axios lè fojú fo àwọn oníyípadà àyíkáHTTP_PROXYti ètò tí ń tako ara wọn - Ṣẹ̀dá
HttpsProxyAgenttàbíProxyAgentlẹ́ẹ̀kan ṣoṣo fún IP proxy kọ̀ọ̀kan níta loop rẹ láti tún àwọn socket keep-alive tí ń pẹ́ títí lò - Kó àkójọ proxy VinaProxy rẹ jáde tààrà gẹ́gẹ́ bí JSON array nípa lílo Proxy Format Converter wa
Ìgbésẹ̀ ní ìgbésẹ̀
- 1
Fi https-proxy-agent (tàbí undici) sori ẹ̀rọ
Ṣe àmúlò
npm install axios https-proxy-agentnínú iṣẹ́ Node.js rẹ. - 2
Ṣẹ̀dá àpẹẹrẹ HttpsProxyAgent
Bẹ̀rẹ̀
const agent = new HttpsProxyAgent('http://user:pass@ip:port');nípa lílo àwọn ẹ̀rí ìwọlé VinaProxy rẹ. - 3
Fi httpsAgent àti proxy: false ránṣẹ́ sí Axios
Pe
const res = await axios.get('https://vinaproxy.com/api/my-ip', { httpsAgent: agent, proxy: false, timeout: 10000 });. - 4
Ṣàyẹ̀wò IP àbájáde náà
Ṣe àkọsílẹ̀
res.dataláti fìdí rẹ̀ múlẹ̀ pé ìdáhùn náà gba inú IP proxy dedicated rẹ wọlé.
Àwọn ìbéèrè tí a ń béèrè lemọ́lemọ́
Kí nìdí tí `proxy: { host, port, auth }` àtìbẹ̀rẹ̀ ti Axios fi ń kùnà lórí àwọn URL HTTPS?
Ìṣètò proxy àbínibí ti Axios ń fi ìbéèrè HTTP lásán ránṣẹ́ dípò kí ó ṣí ọ̀nà àbájáde TLS HTTP CONNECT. Lílo httpsAgent: new HttpsProxyAgent('http://user:pass@ip:port') pẹ̀lú proxy: false ń yanjú èyí.
Báwo ni mo ṣe lè lo proxy pẹ̀lú `fetch()` àbínibí ní Node.js 18/20/22?
Gba ProxyAgent wọlé láti undici kí o sì fi { dispatcher: new ProxyAgent('http://user:pass@ip:port') } ránṣẹ́ nínú ohun àṣàyàn fetch().
Ṣé mo lè yí àkójọ proxy mi padà sí JSON fún Node.js?
Bẹ́ẹ̀ ni—lẹ mọ́ àwọn ìlà ip:port:user:pass rẹ sínú Proxy Format Converter ọ̀fẹ́ wa kí o sì yan àbájáde JSON.
Mú agbára wá sí àwọn backend & scraper Node.js rẹ pẹ̀lú àwọn IP adúróṣinṣin
Àwọn proxy Dedicated IPv4 àti Static ISP tí kò níwọ̀n lẹ́sẹ̀kẹsẹ̀ kọjá àwọn orílẹ̀-èdè 7.
Ra Àwọn Proxy Node.js