HTTP eta SOCKS proxyak Axios-en Node.js-rako
Konfiguratu HTTP proxya Axios-en Node HTTP egokitzailean, edo erabili SOCKS agentea aukeratutako IPa SOCKS amaiera-puntua bada.
Axios-en Node HTTP egokitzaileak ostalaria eta zenbakizko ataka dituen HTTP proxy objektua onartzen du:
import axios from 'axios';
const response = await axios.get('https://example.com/', {
adapter: 'http',
proxy: {
protocol: 'http',
host: '203.0.113.10',
port: 8080,
},
timeout: 15000,
});
console.log(response.status);
Ordeztu dokumentazioko amaiera-puntua zure zerbitzuko edo HTTP proxyen zerrendako HTTP sarrera batekin. Adibideek Node erabiltzen dute; nabigatzaileko Axios-ek ezin du nabigatzailearen sareko proxya aukera hauekin hautatu. host eremuak URL eskemarik gabeko helbidea hartzen du.
Proxy objektuaren protocol eremuak haren entzulea deskribatzen du. Axios 1.21.0-n, Node HTTP egokitzaileak CONNECT erabiltzen du HTTPS helbururako, eta ondoren TLS negoziatzen du jatorrizko zerbitzariarekin tunelaren bidez. Bertsio zaharrek beste proxy-bide batzuk erabili dituzte; beraz, instalatutako bertsioa garrantzitsua da.
SOCKS URL batek SOCKS agentea behar du
HTTP proxy objektuak ez du SOCKS hautatzen. Erabili agente bateragarria:
npm install [email protected] [email protected]
import axios from 'axios';
import { SocksProxyAgent } from 'socks-proxy-agent';
const agent = new SocksProxyAgent('socks5h://203.0.113.10:1080');
try {
const response = await axios.get('https://example.com/', {
adapter: 'http',
httpAgent: agent,
httpsAgent: agent,
proxy: false,
timeout: 15000,
});
console.log(response.status);
} finally {
agent.destroy();
}
proxy: false aukerak Axios-en HTTP proxy tratamendua desgaitzen du SOCKS agenteak emandako biderako. Agentea HTTP eta HTTPS helburuetarako emateak bi eskemak estaltzen ditu. Hemen socks5h aukerak helburuko DNSa SOCKS aldeari uzten dio; aukeratutako zerbitzariak protokolo hori onartu behar du.
Hutsegiteak ulertzea
Axios errore batek erantzuna izan dezake webguneak arrakastarik gabeko egoera eman duenean. Erantzunik ez badago, begiratu errore-kodea eta konexioaren xehetasunak. Falta den moduluak, onartzen ez den protokoloak edo Node bertsio bateraezinak huts egin dezakete eskaera amaiera-puntura heldu aurretik.
Autentifikatutako HTTP proxyetarako, erabili proxy objektuaren auth eremua operadoreak emandako kredentzialekin. Helburuko autentifikazio-ezarpenek beste alde bati zerbitzatzen diote.