HTTP- ja SOCKS-puhverserverid Axioses Node.js-i jaoks
Seadista HTTP-puhverserver Axiosi Node HTTP-adapteris või kasuta SOCKS-agenti, kui valitud IP on SOCKS-lõpp-punkt.
Axiosi Node HTTP-adapter võtab vastu HTTP-puhverserveri objekti koos hosti ja arvulise pordiga:
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);
Asenda dokumentatsiooninäite lõpp-punkt oma teenuse või HTTP-puhverserverite loendi HTTP-kirjega. Näited kasutavad Node’i; brauseri Axios ei saa nende suvanditega brauseri võrgu puhverserverit valida. Väli host võtab aadressi ilma URL-skeemita.
Puhverserveri objekti protocol kirjeldab selle kuulajat. Axios 1.21.0-s kasutab Node HTTP-adapter HTTPS-sihtkoha jaoks CONNECT-i ning lepib seejärel tunneli kaudu päritoluserveriga TLS-i kokku. Vanemad väljalasked kasutasid teistsuguseid puhverserveriteid, seega on paigaldatud versioon oluline.
SOCKS-URL vajab SOCKS-agenti
HTTP-puhverserveri objekt ei vali SOCKS-i. Kasuta ühilduvat agenti:
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 lülitab Axiosi HTTP-puhverserveri töötluse SOCKS-agendi antud marsruudil välja. Agendi määramine nii HTTP- kui HTTPS-sihtkohtade jaoks katab mõlemad skeemid. Siin socks5h annab sihtkoha DNS-i lahendamise SOCKS-i poolele; valitud server peab seda protokolli toetama.
Tõrgete lugemine
Axiosi viga võib sisaldada vastust, kui veebisait tagastas ebaõnnestumise oleku. Vastuse puudumisel vaata veakoodi ja ühenduse üksikasju. Puuduv moodul, toetamata protokoll või ühildumatu Node’i versioon võib põhjustada vea enne päringu lõpp-punktini jõudmist.
Autenditud HTTP-puhverserveri puhul kasuta objekti välja auth koos haldaja antud autentimisandmetega. Sihtkoha autentimisseaded on mõeldud teisele osapoolele.