Di suatu sudut Stack Overflow saat ini, ada orang yang yakin bahwa Axios “diam-diam rusak” kalau dipakai dengan HTTPS proxy. Klaim seperti ini memang sering muncul di tutorial proxy Node.js, tapi itu tidak mewakili rilis terbaru yang diuji untuk panduan ini. Saya menyiapkan rig uji lokal dengan origin HTTP dan HTTPS asli di belakang dua proxy, dan Axios 1.19.0 berhasil meneruskan request HTTPS lewat CONNECT request yang benar, bukan sekadar melewati proxy begitu saja.
Itu bukan berarti keluhan yang beredar sepenuhnya salah. Versi Axios lama memang punya bug yang nyata (lihat issue #3384 dan issue #4531 sebagai buktinya), dan rilis Node terbaru menambahkan jalur proxy berbasis environment yang juga perlu dikonfigurasi dengan hati-hati. Panduan ini akan membahas apa yang benar-benar bekerja di Axios 1.19.0 saat ini, semua cara menyambungkan proxy ke request Anda, pola rotasi dengan interceptor yang hampir tidak pernah dibahas tutorial lain, dan tabel lengkap error-ke-solusi saat semuanya tetap bermasalah.
Apa Itu Axios Proxy (dan Kenapa Penting di Node.js)?
Dalam konteks Axios, proxy adalah server perantara yang berada di antara proses Node Anda dan situs tujuan. Request dikirim ke proxy dulu, lalu proxy meneruskannya, dan situs tujuan akan melihat alamat IP proxy, bukan IP Anda. Sederhana, tapi efeknya besar.
Developer biasanya memakai ini untuk beberapa alasan: scraping situs yang membatasi request atau memblokir berdasarkan IP, menguji perilaku aplikasi dari wilayah berbeda, mengarahkan traffic lewat titik keluar perusahaan, atau sekadar menyembunyikan IP server sendiri dari log akses target. Konfigurasi request resmi Axios menyediakan opsi proxy bawaan dengan field host, port, protocol, dan auth — fitur ini sudah ada sejak lama, dan itulah hal pertama yang ditunjukkan hampir semua tutorial (termasuk panduan ini).
Bagian yang sering terlewat adalah: opsi proxy itu berperilaku berbeda tergantung Anda mengakses target HTTP atau HTTPS, dan juga tergantung versi Axios yang dipakai. Perbedaan inilah alasan panduan ini dibuat.
Menyiapkan Node.js dan Axios (Baseline Cepat)
Lewati bagian ini kalau proyek Anda sudah siap. Kalau belum, butuh sekitar dua menit saja.
mkdir axios-proxy-demo && cd axios-proxy-demo
npm init -y
npm install axios
Tambahkan "type": "module" ke package.json kalau Anda ingin memakai import ESM (saya iya — require() CommonJS untuk demo proxy terasa agak jadul). Node LTS saat ini adalah v24.18.0, meskipun saya menjalankan pengujian pada v22.22.3 agar hasilnya tidak bergantung pada keanehan runtime terbaru.
Masukkan ini ke app.js lalu jalankan node app.js:
import axios from 'axios';
const res = await axios.get('https://httpbin.org/ip');
console.log(res.data);
Anda seharusnya melihat alamat IP asli Anda di response. Itu baseline Anda — begitu proxy aktif, request yang sama seharusnya menampilkan IP proxy.
Simpan response ini sebelum mengaktifkan proxy; ini memberi baseline yang jelas untuk dibandingkan dengan request yang lewat proxy pada langkah berikutnya.
Apakah Axios Benar-Benar Mendukung HTTPS Proxy? (Meluruskan Kekeliruan)
Jawaban singkatnya: ya, di rilis stabil saat ini. Axios 1.19.0 mendokumentasikan CONNECT tunneling untuk target HTTPS di balik HTTP proxy. API download npm mencatat 117.890.039 unduhan Axios dari 31 Juli sampai 6 Agustus 2026, yang menunjukkan seberapa luas library ini dipakai. Saat Anda mengakses URL HTTPS lewat proxy, Axios versi sekarang mengirim request CONNECT untuk membangun tunnel, lalu TLS handshake terjadi end-to-end dengan origin asli. Saya mengujinya langsung: local HTTP proxy, local HTTPS origin dengan sertifikat self-signed, dan penghitung CONNECT di proxy saya naik persis seperti yang diharapkan.
Lalu kenapa kalimat “Axios HTTPS proxy rusak” muncul di hampir setiap thread forum tentang ini? Ada beberapa penyebab, dan semuanya nyata:
- Versi Axios yang lama. Issue GitHub yang sering dibagikan biasanya sudah berumur dan menggambarkan perilaku spesifik rilis atau konfigurasi tertentu, jadi tidak layak digeneralisasi ke Axios versi sekarang.
- Server proxy tanpa dukungan CONNECT. Dalam kondisi itu, tunnel memang gagal dan Axios seharusnya menampilkan error; tangkap rute dan error yang sebenarnya sebelum menyimpulkan ada bypass IP.
- Mengira konfigurasi
proxysebagai sesuatu yang bukan itu. Opsiproxyadalah instruksi forward proxy, bukan tombol umum “rute semua traffic lewat agent ini apa pun yang terjadi”.
Chromium melaporkan pada 2023 bahwa lebih dari 90% navigasi Chrome di platform utama menggunakan HTTPS. Itu adalah metrik Chrome yang sudah cukup lama, bukan sensus web global terbaru, tapi cukup menjelaskan kenapa perilaku target HTTPS harus jadi pusat tutorial ini. Kalau Anda memakai Axios versi lama, reproduksi masalahnya di versi terbaru dulu sebelum menganggap isu historis itu masih relevan; uji upgrade-nya di aplikasi Anda sendiri sebelum dipasang ke production.
Saat Anda Tetap Ingin Memakai Agent Secara Eksplisit
Konfigurasi proxy bawaan cukup baik untuk satu proxy statis yang konvensional. Tapi begitu Anda butuh kontrol per-request, rotasi proxy, atau dukungan SOCKS, opsi bawaan Axios memang tidak dirancang untuk itu. Di sinilah HttpsProxyAgent jadi berguna, dan nanti akan saya bahas di bawah. Anggap opsi native sebagai “cukup untuk satu proxy, satu tujuan” dan pendekatan berbasis agent sebagai “yang benar-benar Anda inginkan di production.”
Jalur Environment Proxy di Node v24 dan v22.21+
Rilis Node terbaru menyediakan mode environment-proxy bawaan, yang diaktifkan lewat NODE_USE_ENV_PROXY=1 atau flag --use-env-proxy. Menurut dokumentasi CLI Node sendiri, fitur ini hadir di v24.0.0 dan di-backport ke v22.21.0 — jadi pernyataan “Node 22+” secara teknis kurang tepat; yang benar adalah v22.21.0 ke atas dalam lini itu. Kalau Anda masih memakai patch Node 22 yang lebih lama, flag ini sama sekali belum tersedia.
Axios versi sekarang sudah membaca HTTP_PROXY, HTTPS_PROXY, dan NO_PROXY melalui dependency proxy-from-env, jadi global-agent tidak diperlukan untuk jalur Axios saat ini. Saat mode env-proxy bawaan Node juga aktif, bisa ada dua lapisan yang terlibat dalam keputusan routing.
Dokumentasi Axios menyebutkan bahwa pada versi Node di mana agent membawa properti proxyEnv, Axios akan menyerahkan pemrosesan ke Node, bukan menyelesaikannya sendiri. Secara praktis, pilih salah satu sistem saja dan konsisten:
- Biarkan Node yang mengurusnya: aktifkan flag, jangan isi konfigurasi
proxydi Axios, dan biarkan env var bekerja. - Biarkan Axios yang mengurusnya: jangan aktifkan flag Node, dan biarkan resolusi env var milik Axios berjalan.
- Ambil kontrol penuh secara manual: set
proxy: falsesecara eksplisit dan sediakanhttpsAgentAnda sendiri — ini melewati kedua sistem otomatis, dan ini yang saya sarankan begitu Anda butuh rotasi atau logika per-request.
Saya menguji resolusi sisi Axios secara langsung: mengatur HTTP_PROXY di environment child process membuat request lewat proxy lokal saya, dan menambahkan entri NO_PROXY yang cocok membuat request berikutnya melewatinya dengan benar. Jadi jalur env var memang sudah langsung bekerja sekarang — yang perlu diwaspadai adalah skenario dua mode aktif sekaligus.
5 Cara Menyambungkan Proxy ke Axios (Perbandingan)
Sebelum masuk ke kode, ini gambaran besarnya. Saya membangun dan menguji masing-masing metode ini pada setup proxy lokal yang nyata, bukan cuma dari membaca dokumentasi.
| Metode | Dukungan HTTPS | Dukungan Auth | Kontrol per Request | Cocok untuk Rotasi | Kompleksitas |
|---|---|---|---|---|---|
Opsi inline proxy | ✅ (Axios versi sekarang) | ✅ | ✅ | ❌ | Rendah |
Default axios.create() | ✅ (Axios versi sekarang) | ✅ | ❌ (berlaku untuk seluruh instance) | ❌ | Rendah |
Env var (HTTP_PROXY/HTTPS_PROXY) | ✅ | ✅ | ❌ | ❌ | Rendah |
httpsAgent + HttpsProxyAgent | ✅ | ✅ | ✅ | ⚠️ (manual) | Sedang |
| Request interceptor + pool agent | âś… | âś… | âś… | âś… | Sedang-Tinggi |
Gunakan opsi inline untuk skrip cepat yang hanya menembak satu proxy. Gunakan axios.create() kalau semua request di satu modul harus lewat proxy yang sama tanpa mengulang konfigurasi. Gunakan env var kalau tim infrastruktur Anda sudah mengelola routing proxy secara terpusat dan Anda hanya ingin mewarisinya. Pakai agent eksplisit saat Anda butuh kontrol yang tidak bisa diberikan konfigurasi native — dan pakai pola interceptor begitu “kontrol” berubah menjadi “rotasi.”

Langkah demi Langkah: Konfigurasi Proxy Dasar di Axios
Setup paling sederhana memakai objek proxy bawaan langsung di request:
import axios from 'axios';
const res = await axios.get('https://httpbin.org/ip', {
proxy: {
host: '203.0.113.10',
port: 8080,
protocol: 'http',
},
});
console.log(res.data);
Jalankan ini dan Anda seharusnya melihat IP proxy di response, bukan IP Anda sendiri. Kalau Anda mengujinya secara lokal dengan proxy sungguhan, biasanya selesai jauh di bawah satu detik — dibandingkan, misalnya, mengatur proxy level sistem hanya untuk satu request, yang bisa menghabiskan lima belas menit yang tidak Anda punya.
Bandingkan response ini dengan baseline. Pengujian yang berhasil seharusnya menampilkan public IP proxy, bukan origin IP yang Anda catat sebelumnya.
Menggunakan axios.create() untuk Default di Seluruh Instance
Kalau semua request di suatu modul harus lewat proxy yang sama, masukkan konfigurasinya ke instance saja, jangan diulang terus:
const client = axios.create({
proxy: {
host: '203.0.113.10',
port: 8080,
},
timeout: 15_000,
});
const res = await client.get('https://httpbin.org/ip');
Saya memverifikasi bahwa override proxy: false pada request individual bisa melewati default instance dengan bersih — berguna kalau 95% panggilan butuh proxy tetapi beberapa request (misalnya ping health-check) tidak perlu.
Menetapkan Proxy lewat Environment Variables
Untuk routing yang dikelola terpusat — misalnya container Docker atau environment CI di mana tim ops sudah mengatur env var proxy — Anda tidak perlu menyentuh konfigurasi Axios sama sekali:
export HTTP_PROXY=http://203.0.113.10:8080
export HTTPS_PROXY=http://203.0.113.10:8080
export NO_PROXY=localhost,127.0.0.1
Axios versi sekarang membaca variabel ini tanpa global-agent. Ingat batas versi Node yang dibahas tadi: jika NODE_USE_ENV_PROXY juga aktif, pastikan pemilik routing-nya jelas dan uji perilaku NO_PROXY di runtime yang digunakan.
Langkah demi Langkah: Setup HTTPS Proxy dengan httpsAgent (Untuk Kontrol Sungguhan)
Ini setup yang benar-benar saya sarankan begitu Anda butuh lebih dari sekadar “satu proxy, selamanya.” Instal package agent terbaru:
npm install https-proxy-agent
https-proxy-agent 9.1.0 membutuhkan Node 20 atau lebih baru dan mengirim CONNECT yang tepat ke proxy Anda sebelum meneruskan koneksi target melaluinya.
import axios from 'axios';
import { HttpsProxyAgent } from 'https-proxy-agent';
const agent = new HttpsProxyAgent('http://203.0.113.10:8080');
const client = axios.create({
proxy: false, // hentikan resolusi native Axios agar tidak ikut campur
httpsAgent: agent,
timeout: 15_000,
});
const res = await client.get('https://httpbin.org/ip');
console.log(res.data);
Set proxy: false saat routing sudah ditentukan oleh explicit agent. Ini membuat konfigurasi jadi jelas dan mencegah resolusi proxy native Axios atau environment-proxy ikut bersaing dengan agent yang Anda sediakan.
Menambahkan Autentikasi Proxy
Masukkan kredensial langsung ke dalam URL proxy:
const agent = new HttpsProxyAgent('http://myuser:mypassword@203.0.113.10:8080');
Kalau password Anda mengandung karakter khusus — @, :, # biasanya paling sering bikin masalah — lakukan percent-encode dulu sebelum membangun URL, atau susun string dengan encodeURIComponent() pada tiap komponen. Tanda @ mentah di password akan dibaca sebagai awal bagian host, dan Anda akan mendapat error koneksi yang kelihatannya sama sekali tidak terkait dengan encoding.
Menggunakan SOCKS5 Proxy dengan Axios
SOCKS proxy tidak kompatibel dengan HttpsProxyAgent — Anda butuh agent lain untuk protokol ini:
npm install socks-proxy-agent
import { SocksProxyAgent } from 'socks-proxy-agent';
const agent = new SocksProxyAgent('socks5://myuser:mypass@203.0.113.10:1080');
const client = axios.create({
proxy: false,
httpsAgent: agent,
});
socks-proxy-agent 10.1.0 juga membutuhkan Node 20+. SOCKS5 berguna saat Anda berurusan dengan jaringan perusahaan yang hanya menyediakan gateway SOCKS, atau dengan provider proxy yang menawarkan dukungan protokol lebih fleksibel daripada HTTP proxy biasa.
Rotasi Proxy dengan Axios Request Interceptors
Memilih proxy secara acak di dalam kode pemanggil memang cukup untuk skrip sekali pakai. Tapi pendekatan itu runtuh ketika Anda mengirim ratusan request, karena tidak ada tempat terpusat untuk melacak proxy yang mati, tidak ada retry logic, dan kode pemilihan proxy akhirnya tersalin di banyak tempat. Sistem interceptor Axios memberi logic itu satu rumah yang bisa diuji; tidak satu pun dari lima tutorial pesaing yang saya review di SERP memakai pola ini.

Membangun Proxy Pool
import axios, { AxiosError, InternalAxiosRequestConfig } from 'axios';
import { HttpsProxyAgent } from 'https-proxy-agent';
class ProxyPool {
private agents: HttpsProxyAgent<string>[];
private index = 0;
constructor(proxyUrls: string[]) {
this.agents = proxyUrls.map((url) => new HttpsProxyAgent(url));
}
next(): HttpsProxyAgent<string> {
const agent = this.agents[this.index];
this.index = (this.index + 1) % this.agents.length;
return agent;
}
}
const pool = new ProxyPool([
'http://user:pass@proxy1.example.com:8080',
'http://user:pass@proxy2.example.com:8080',
]);
const client = axios.create({ timeout: 15_000 });
client.interceptors.request.use((config: InternalAxiosRequestConfig) => {
config.proxy = false;
config.httpsAgent = pool.next();
return config;
});
Saya menjalankan ini terhadap dua proxy lokal dan memastikan request bergantian dengan benar — proxy A, lalu proxy B, lalu kembali ke A. Perhatikan bahwa Axios mengeksekusi request interceptor secara last-in-first-out, jadi kalau Anda punya interceptor lain (header auth, logging), urutannya lebih penting dari yang mungkin Anda bayangkan.
Menambahkan Response Interceptor dengan Pengaman Retry
Di sinilah kebanyakan skrip rotasi buatan sendiri mulai ceroboh. Retry secara membabi buta pada setiap kegagalan, terhadap pool tanpa batas, bisa mengubah satu request gagal menjadi rangkaian masalah — terutama untuk metode non-idempotent seperti POST, di mana retry bisa menggandakan side effect yang sebenarnya tidak ingin Anda gandakan.
type RetryableConfig = InternalAxiosRequestConfig & {
__proxyRetryCount?: number;
};
client.interceptors.response.use(
undefined,
async (error: AxiosError) => {
const config = error.config as RetryableConfig | undefined;
if (!config) throw error;
const method = String(config.method ?? 'get').toUpperCase();
config.__proxyRetryCount ??= 0;
if (method !== 'GET' || config.__proxyRetryCount >= 1) throw error;
config.__proxyRetryCount += 1;
config.proxy = false;
config.httpsAgent = pool.next();
return client.request(config);
}
);
Saya mengujinya terhadap proxy yang sengaja dibuat rusak dan memastikan hanya satu retry yang terjadi pada agent alternatif — tidak ada infinite loop, dan tidak ada retry pada request POST. Itulah batas yang Anda perlukan: kebijakan retry yang jujur soal request mana yang aman untuk diulang, bukan trik “coba lagi terus sampai berhasil.”

Tabel Diagnosis Error: Pemetaan Setiap Kegagalan ke Solusinya
Simpan ini. Ini error yang benar-benar muncul di issue GitHub Axios dan thread Stack Overflow, bukan yang hipotetis.
| Error / Gejala | Penyebab Kemungkinan | Solusi |
|---|---|---|
ECONNREFUSED | Host/port salah, atau server proxy sedang down | Verifikasi dengan curl -x http://host:port target-url sebelum menyentuh kode Axios |
407 Proxy Authentication Required | Kredensial hilang atau salah | Tambahkan auth: { username, password } ke konfigurasi proxy, atau sematkan kredensial di URL HttpsProxyAgent |
403 Forbidden | Origin atau WAF menolak request atau IP proxy | Cek kebijakan akses situs, autentikasi, dan laju request; jangan menganggap header atau IP yang berbeda sebagai izin untuk melewati pembatasan |
| Response menampilkan IP asli Anda | NO_PROXY, proxy:false, explicit direct agent, atau konfigurasi historis/spesifik versi mungkin melewati proxy | Telusuri lapisan mana yang mengurus routing; verifikasi jalurnya dengan endpoint IP terkontrol dan explicit agent jika perlu |
ETIMEDOUT | Interval connect atau response melewati timeout yang dikonfigurasi | Ukur di mana waktu habis; ubah timeout hanya jika beban kerjanya memang layak, kalau tidak ganti atau beri jeda pada jalur yang bermasalah |
ECONNRESET di tengah response | Proxy, jaringan, atau origin menutup koneksi | Catat hop yang gagal; retry hanya request yang aman diulang dengan budget terbatas |
502 Bad Gateway di belakang Nginx | proxy_pass Nginx salah konfigurasi, atau timeout Axios tidak cocok dengan Nginx | Periksa proxy_connect_timeout dan proxy_read_timeout (keduanya default 60 detik) dan selaraskan dengan timeout Axios |
ERR_TLS_CERT_ALTNAME_INVALID | Tipe agent salah untuk target, atau sertifikat self-signed | Pastikan Anda memakai agent yang tepat untuk protokolnya; set rejectUnauthorized: false hanya untuk testing lokal — jangan pernah di production |
Checklist Debugging Cepat
Saat sesuatu rusak dan Anda tidak tahu penyebabnya, ikuti langkah ini berurutan:
- Uji proxy langsung dengan
curl -x http://host:port https://your-target.com. Jika gagal, selidiki konektivitas proxy, autentikasi, dan target sebelum mengubah Axios. Jika berhasil, jalur Axios tetap perlu verifikasi terpisah. - Pastikan versi Axios dan Node yang benar-benar Anda jalankan, lalu bandingkan laporan historis dengan release/konfigurasi yang sama sebelum memakai solusinya.
- Tentukan sistem mana yang sedang menyelesaikan proxy — konfigurasi native Axios, resolusi env var Axios, mode env-proxy bawaan Node, atau explicit agent. Jangan biarkan lebih dari satu pihak menguasai request yang sama.
- Periksa
NO_PROXYuntuk kecocokan hostname yang tidak disengaja. - Jika memakai explicit agent, pastikan
proxy: falsediset agar Axios tidak mencoba menanganinya dua kali.
Kapan Sebaiknya Tidak Perlu Membangun Plumbing Proxy Sendiri
Semua hal di atas memang sangat berguna kalau tujuan Anda memang merutekan traffic secara bebas — testing jaringan perusahaan, geo-testing aplikasi, atau egress terkontrol. Tapi banyak developer datang ke pertanyaan “bagaimana cara menyiapkan Axios proxy” padahal sebenarnya mereka hanya ingin data dari sebuah situs, dan proxy cuma sarana menuju tujuan itu.
Kalau itu situasi Anda, ada baiknya bertanya: apakah Anda benar-benar butuh proxy, atau justru butuh scraping API yang menangani infrastrukturnya untuk Anda? Open API milik Thunderbit menerima URL dan schema lalu mengembalikan JSON terstruktur — tanpa parsing HTML mentah, tanpa library agent, tanpa perlu menjaga proxy pool. Endpoint /extract menangani halaman yang dirender JS, anti-bot, dan CAPTCHA di sisi server, dan ada endpoint /distill yang lebih ringan untuk mengubah halaman menjadi Markdown bersih kalau itu saja yang Anda perlukan. Ada juga MCP server yang menyediakan tool seperti thunderbit_extract dan thunderbit_suggest_fields, sehingga coding assistant seperti Claude atau Cursor bisa mengambil data terstruktur di tengah tugas tanpa menyentuh konfigurasi proxy sama sekali, plus CLI untuk workflow terminal dan CI.
| Kebutuhan | DIY Axios + Proxy | Thunderbit API/MCP/CLI |
|---|---|---|
| Sumber dan rotasi proxy | Anda yang mengelola | Ditangani di sisi server |
| Tantangan browser dan akses | Anda mengoperasikan lapisan browser/jaringan | Dikelola oleh layanan sesuai kemampuan yang didokumentasikan |
| Halaman yang dirender JS | Perlu headless browser | renderMode: full |
| Format output | HTML mentah → Anda yang parsing | JSON terstruktur melalui schema |
| Pemeliharaan saat situs berubah | Anda yang memelihara parsing/selector | Lapisan ekstraksi terkelola mengurangi sebagian pemeliharaan di sisi aplikasi |
Framing yang jujur: kalau Anda memang perlu merutekan traffic untuk testing atau networking perusahaan, tidak ada yang di atas menggantikan Axios dan konfigurasi proxy. Kalau hasil akhir yang Anda butuhkan adalah data web terstruktur, pendekatan API-first bisa mengurangi kode proxy, browser, dan parsing yang harus dimiliki aplikasi Anda. Saat pengambilan pada 7 Agustus 2026, dokumentasi rate limit API Thunderbit mencantumkan Free tier sebesar 10 request per menit dan 2 concurrent request. Perlakukan itu sebagai batas API yang sensitif waktu dan cek ulang halaman tersebut sebelum mengandalkannya di production.
Penutup
Pelajaran inti di sini cukup bertolak belakang dengan banyak tutorial lama: dokumentasi Axios versi sekarang dan, dalam pengujian lokal yang dicatat, memang menggunakan CONNECT tunneling dengan benar untuk target HTTPS. Kegagalan historis tetap penting, tetapi harus dilihat dalam konteks versi dan konfigurasi. Konfigurasi native adalah titik awal yang bagus karena sederhana; saat Anda butuh kontrol per-request, dukungan SOCKS, atau rotasi, HttpsProxyAgent (atau SocksProxyAgent) yang dipasangkan dengan proxy: false memberi ownership yang jauh lebih jelas. Dan kalau Anda merotasi melalui pool di production, request dan response interceptor menyediakan tempat terpusat yang bisa diuji untuk melakukannya — pastikan saja retry logic Anda punya pengaman loop dan hanya mengulang request yang memang aman diulang.
Simpan tabel diagnosis di atas untuk kali berikutnya konfigurasi proxy melempar error yang membingungkan jam 2 pagi. Dan kalau Anda mendapati diri menghabiskan lebih banyak waktu debugging plumbing proxy daripada benar-benar memakai data yang ingin Anda ambil, mungkin sudah saatnya mengecek apakah alat ekstraksi berbasis API bisa menyelesaikan masalah yang sebenarnya lebih cepat daripada infrastruktur apa pun.
FAQ
Apakah Axios mendukung HTTPS proxy secara native? Ya, pada Axios versi sekarang untuk HTTP proxy konvensional: dokumentasi saat ini menjelaskan CONNECT tunneling untuk target HTTPS, dan Axios 1.19.0 berhasil melewati rute itu dalam pengujian lokal yang dicatat. Rilis historis dan konfigurasi proxy tertentu memang pernah gagal, jadi verifikasi versi dan proxy yang tepat, jangan berasumsi semuanya selalu berhasil atau selalu gagal.
Bagaimana cara merotasi proxy di Axios?
Gunakan request interceptor untuk menetapkan httpsAgent yang berbeda dari proxy pool sebelum setiap request dikirim, lalu pasangkan dengan response interceptor yang me-retry request gagal melalui proxy lain. Batasi retry dengan ketat — satu kali retry, dan hanya untuk metode idempotent seperti GET — supaya Anda tidak tanpa sengaja mengulang request yang tidak seharusnya diulang.
Kenapa proxy Axios saya menampilkan IP asli saya?
Periksa apakah NO_PROXY, proxy:false, explicit direct agent, atau routing spesifik deployment melewati proxy. Catat versi Axios/Node dan uji proxy secara independen dengan cURL. Jika Anda butuh routing per-request yang tidak ambigu, gunakan HttpsProxyAgent dengan proxy:false dan verifikasi IP yang terlihat pada endpoint terkontrol.
Bisakah saya memakai SOCKS5 proxy dengan Axios?
Bisa, lewat package socks-proxy-agent. Buat instance SocksProxyAgent dengan URL SOCKS Anda dan pass sebagai httpsAgent di konfigurasi Axios — pastikan Anda tidak juga memakai HttpsProxyAgent, karena kedua protokol memakai jenis agent yang berbeda.
Apa perbedaan antara opsi proxy dan httpsAgent di Axios?
Opsi proxy adalah konfigurasi bawaan Axios untuk satu proxy statis dan cocok untuk use case sederhana di versi sekarang. httpsAgent menerima custom Node.js agent — seperti HttpsProxyAgent atau SocksProxyAgent — sehingga memberi Anda kontrol langsung per request atas routing, autentikasi, dan rotasi yang memang tidak dirancang untuk ditangani oleh opsi native.


