Node HTTP адаптер Axios-а прима HTTP прокси објекат с хостом и нумеричким портом:

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);

Замените документацијску крајњу тачку HTTP уносом своје услуге или са листе HTTP проксија. Примери користе Node; Axios у прегледачу не може овим опцијама да изабере мрежни прокси прегледача. Поље host прима адресу без URL шеме.

Поље protocol прокси објекта описује његов слушајући сервис. У Axios-у 1.21.0 Node HTTP адаптер користи CONNECT за HTTPS одредиште, па кроз тунел договара TLS са изворним сервером. Старија издања користила су друге прокси путање, зато је инсталирана верзија важна.

SOCKS URL захтева SOCKS агент

HTTP прокси објекат не бира SOCKS. Користите компатибилан агент:

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 искључује HTTP прокси обраду Axios-а за путању коју пружа SOCKS агент. Агент за HTTP и HTTPS одредишта покрива обе шеме. Овде socks5h препушта DNS одредишта SOCKS страни; изабрани сервер мора да подржава тај протокол.

Тумачење грешака

Axios грешка може да садржи одговор када сајт врати неуспешан статус. Без одговора прегледајте код грешке и детаље везе. Недостајући модул, неподржан протокол или некомпатибилна верзија Node-а могу да изазову грешку пре него што захтев дође до крајње тачке.

За HTTP проксије с аутентификацијом користите поље auth прокси објекта са приступним подацима оператера. Подешавања аутентификације одредишта служе другој страни.

Повезани чланци