Axios ၏ Node HTTP adapter က host နှင့် ကိန်းဂဏန်း port ပါသော HTTP proxy object ကို လက်ခံသည်—

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

စာရွက်စာတမ်း endpoint ကို သင့် service သို့မဟုတ် HTTP proxy စာရင်း၏ HTTP entry ဖြင့် အစားထိုးပါ။ ဤနမူနာများက Node ကို သုံးသည်။ browser Axios သည် ဤရွေးချယ်မှုများဖြင့် browser ၏ network proxy ကို မရွေးနိုင်ပါ။ host field က URL scheme မပါသော address ကို လက်ခံသည်။

proxy object ၏ protocol သည် ၎င်း၏ listener ကို ဖော်ပြသည်။ Axios 1.21.0 တွင် Node HTTP adapter က HTTPS ပစ်မှတ်အတွက် CONNECT သုံးပြီးနောက် tunnel မှတစ်ဆင့် မူလ server နှင့် TLS ညှိနှိုင်းသည်။ ဗားရှင်းအဟောင်းများက ပရောက်စီလမ်းကြောင်း မတူသည်ကို သုံးခဲ့သဖြင့် ထည့်သွင်းထားသောဗားရှင်းက အရေးကြီးသည်။

SOCKS URL အတွက် SOCKS agent လိုသည်

HTTP proxy object သည် SOCKS ကို မရွေးပါ။ အစား ကိုက်ညီသော agent ကို သုံးပါ—

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 သည် SOCKS agent ပေးသောလမ်းကြောင်းအတွက် Axios ၏ HTTP proxy handling ကို ပိတ်သည်။ HTTP နှင့် HTTPS ပစ်မှတ်နှစ်မျိုးအတွက် agent ပေးခြင်းက scheme နှစ်ခုလုံးကို အကျုံးဝင်စေသည်။ ဤတွင် socks5h က ပစ်မှတ် DNS ကို SOCKS ဘက်သို့ လွှဲပေးသည်။ ရွေးထားသော server က ထိုပရိုတိုကောကို ပံ့ပိုးရမည်။

ပျက်ကွက်မှုကို နားလည်ခြင်း

ဝဘ်ဆိုက်က မအောင်မြင်သော status ပြန်ပေးလျှင် Axios error တွင် response ပါနိုင်သည်။ response မရှိလျှင် error code နှင့် ချိတ်ဆက်အသေးစိတ် စစ်ပါ။ module မရှိခြင်း၊ မပံ့ပိုးသောပရိုတိုကော သို့မဟုတ် မကိုက်ညီသော Node ဗားရှင်းသည် request endpoint ရောက်မီ ပျက်ကွက်နိုင်သည်။

authentication လိုသော HTTP ပရောက်စီများအတွက် proxy object ၏ auth field တွင် operator ပေးသော အကောင့်ဝင်အချက်အလက်ကို သုံးပါ။ ပစ်မှတ်၏ authentication setting များသည် အခြားတစ်ဖက်အတွက် ဖြစ်သည်။

ဆက်စပ်ဆောင်းပါးများ