Node.js için Axios Proxy Nasıl Kurulur (Evet, HTTPS Dahil)

Son güncelleme: August 11, 2026
Axios request travelling through a CONNECT proxy tunnel to an HTTPS origin
AI Özeti
  • Node.js’te Axios proxy kullanımını açık proxy yapılandırması, environment değişkenleri ve Axios’un otomatik yönetmediği durumlar için özel HTTP/HTTPS agent’larıyla kurun.
  • HTTPS CONNECT tünellemeyi, proxy URL’si ile hedef URL arasındaki farkı ve SOCKS proxy’lerin neden standart proxy seçeneği yerine agent gerektirdiğini anlayın.
  • Retry fırtınası oluşturmadan proxy havuzları, round-robin seçim, sağlık skoru, soğuma süreleri ve istek başına zaman aşımı ile proxy rotasyonu uygulayın.
  • Taşıma katmanı, proxy ve origin seviyesindeki hedefli kontrollerle ECONNRESET, ETIMEDOUT, 407, TLS, DNS ve environment öncelik problemlerini teşhis edin.
  • Kimlik bilgilerini kaynak kod dışında tutun ve üretim otomasyonunda gerekli proxy yönlendirmesinin başarısız olduğunda kapalı kalmasını sağlayın.

Şu anda Stack Overflow’da bir yerde biri, Axios’un HTTPS proxy’lerinde “sessizce bozulduğuna” kesin gözüyle bakıyor. Bu, Node.js proxy anlatımlarında en sık tekrarlanan iddialardan biri; ama bu rehber için test ettiğim güncel sürümü doğru yansıtmıyor. Gerçek HTTP ve HTTPS hedefleri olan, iki proxy arkasına kurulmuş yerel bir test düzeneği çalıştırdım ve Axios 1.19.0, HTTPS isteğini proxy’yi atlamak yerine düzgün bir CONNECT isteğiyle tünelledi.

Bu, insanların anlattığı sıkıntıların uydurma olduğu anlamına gelmiyor. Eski Axios sürümlerinde gerçekten hatalar vardı (issue #3384 ve issue #4531 buna dair kanıtlar), ayrıca yeni Node sürümleri dikkatli yapılandırılması gereken ikinci bir environment-proxy yolunu beraberinde getiriyor. Bu rehber, günümüzde Axios 1.19.0 ile gerçekte neyin çalıştığını, proxy’yi isteklerinize bağlamanın tüm yöntemlerini, çoğu rehberde görmeyeceğiniz interceptor tabanlı bir rotasyon desenini ve işler ters gittiğinde kullanabileceğiniz tam bir hata–çözüm tablosunu anlatıyor.

Axios Proxy Nedir ve Node.js’te Neden Önemlidir?

Axios bağlamında proxy, Node süreciniz ile hedef site arasında duran bir ara sunucudur. İsteğiniz önce proxy’ye gider, proxy onu iletir ve hedef sizin IP’niz yerine proxy’nin IP adresini görür. Olayın özü bu.

Geliştiriciler bunu birkaç nedenle kullanır: IP tabanlı kısıt koyan ya da engelleyen siteleri taramak, bir uygulamanın farklı bir coğrafyadan nasıl davrandığını test etmek, trafiği kurumsal çıkış noktasından yönlendirmek ya da kendi sunucularının IP’sini bazı hedeflerin erişim kayıtlarından uzak tutmak. Axios’un resmi request config dokümanı, host, port, protocol ve auth alanlarına sahip yerleşik bir proxy seçeneği sunar — yıllardır oradadır ve her rehberin (bu da dahil) ilk gösterdiği şey budur.

Gözden kaçan kısım şu: proxy seçeneği, HTTP ya da HTTPS hedefe gidiyor olmanıza ve kullandığınız Axios sürümüne göre farklı davranır. Bu rehberin var olma nedeni tam olarak bu farktır.

Node.js ve Axios Kurulumu (Hızlı Başlangıç)

Zaten bir projeniz varsa bunu atlayın. Yoksa iki dakikanızı alır.

mkdir axios-proxy-demo && cd axios-proxy-demo
npm init -y
npm install axios

ESM import kullanmak istiyorsanız package.json dosyanıza "type": "module" ekleyin (ben ekliyorum — bir proxy demosunda CommonJS require() kullanmak biraz eski duruyor). Güncel Node LTS sürümü v24.18.0, ancak testlerimi özellikle v22.22.3 üzerinde yaptım; böylece sonuçlar en yeni runtime tuhaflıklarına bağlı kalmasın.

Bunu app.js içine koyup node app.js çalıştırın:

import axios from 'axios';

const res = await axios.get('https://httpbin.org/ip');
console.log(res.data);

Yanıtta gerçek IP adresinizi görmelisiniz. Bu sizin başlangıç noktanızdır — proxy çalışmaya başladığında aynı istek bu kez proxy’nin IP’sini döndürmelidir.

Proxy’yi açmadan önce bu yanıtı not edin; böylece sonraki adımda proxylı istekle karşılaştırabileceğiniz somut bir referansınız olur.

Axios Gerçekten HTTPS Proxy’lerini Destekliyor mu? (Netleştirelim)

Kısa cevap: evet, mevcut kararlı sürümde destekliyor. Axios 1.19.0, bir HTTP proxy arkasındaki HTTPS hedefler için CONNECT tünellemesini dokümante ediyor. npm indirme API’si 31 Temmuz–6 Ağustos 2026 arasında 117.890.039 Axios indirimi kaydetti; bu sayı eski bir gösterge olsa da kütüphanenin ne kadar yaygın kullanıldığını gösteriyor. Bir HTTPS URL’ye proxy üzerinden gittiğinizde güncel Axios, tüneli kurmak için CONNECT isteği gönderir ve TLS el sıkışması doğrudan gerçek hedef uç nokta ile gerçekleşir. Bunu bizzat test ettim: yerel HTTP proxy, kendi imzalı sertifikaya sahip yerel bir HTTPS hedef ve proxy üzerindeki CONNECT sayacı tam beklendiği gibi arttı.

Peki neden hemen her forum başlığında “Axios HTTPS proxy bozuk” ifadesi karşımıza çıkıyor? Bunun birkaç gerçek nedeni var:

  • Eski Axios sürümleri. İnsanların paylaştığı GitHub sorunları çoğu zaman yıllar öncesine ait; belirli sürüm ve yapılandırmalara özgü davranışları anlatıyorlar, güncel Axios’a genellenmemeliler.
  • CONNECT desteği olmayan proxy sunucuları. Bu durumda tünel kurulamıyor ve Axios’un hata vermesi gerekir; IP atlaması varsayımı yapmadan önce gerçek rotayı ve hatayı yakalayın.
  • proxy ayarını yanlış anlamak. proxy seçeneği bir forward-proxy talimatıdır; “hangi olursa olsun her şeyi bu ajan üzerinden geçir” gibi genel bir anahtar değildir.

Chromium, 2023’te büyük platformlardaki Chrome gezintilerinin yüzde 90’ından fazlasının HTTPS kullandığını bildirdi. Bu, tüm web için güncel bir sayım değil; ama HTTPS hedef davranışının bu rehberin merkezinde neden yer aldığını açıklıyor. Eski bir Axios sürümündeyseniz, sorunu güncel hatta yeniden üretin; tarihsel bir problemin hâlâ geçerli olduğunu varsaymayın. Yükseltmeyi kendi uygulamanızda üretime almadan önce test edin.

Hâlâ Açık Bir Agent İstediğiniz Durumlar

Yerleşik proxy yapılandırması, tek ve sabit, klasik bir proxy için yeterlidir. Ama istek bazında kontrol, proxy rotasyonu ya da SOCKS desteğine ihtiyaç duyduğunuz anda yetersiz kalır — Axios’un yerleşik seçeneği bunun için tasarlanmamıştır. İşte burada HttpsProxyAgent devreye girer; aşağıda bunu anlatacağım. Yerleşik seçeneği “tek proxy, tek amaç için yeterince iyi” olarak düşünün; agent tabanlı yaklaşımı ise “üretimde gerçekten isteyeceğiniz yapı” olarak görün.

Node v24 ve v22.21+ Environment Proxy Yolu

Yeni Node sürümleri, NODE_USE_ENV_PROXY=1 ya da --use-env-proxy bayrağıyla etkinleşen yerleşik bir environment-proxy modu ile gelir. Node’un kendi CLI dokümantasyonuna göre bu özellik v24.0.0’da geldi ve v22.21.0’a geriye taşındı — yani “Node 22+” teknik olarak doğru değil; tam olarak v22.21.0 ve sonrası kastedilir. Daha eski bir Node 22 yamasındaysanız bu bayrak hiç mevcut değildir.

Güncel Axios zaten proxy-from-env bağımlılığı üzerinden HTTP_PROXY, HTTPS_PROXY ve NO_PROXY değişkenlerini çözümler; yani bu güncel Axios yolunda global-agent gerekmez. Node’un kendi env-proxy modu da etkinse, yönlendirme kararında iki katman rol oynayabilir.

Axios dokümanları, proxyEnv özelliğine sahip bir agent bulunan Node sürümlerinde Axios’un kendi çözümlemesi yerine Node’un davranışını devreye aldığını belirtir. Pratikte bu, tek bir sistem seçip onunla devam etmeniz gerektiği anlamına gelir:

  • Node’un yönetmesine izin vermek: bayrağı açın, Axios proxy ayarını kullanmayın, env değişkenleri işi halletsin.
  • Axios’un yönetmesine izin vermek: Node bayrağını açmayın, Axios’un kendi env değişkeni çözümlemesi devreye girsin.
  • Tam manuel kontrol almak: proxy: false değerini açıkça set edin ve kendi httpsAgent değerini verin — bu, her iki otomatik sistemi de tamamen baypas eder. Rotasyon ya da istek bazlı mantığa geçtiğinizde bunu öneririm.

Axios tarafındaki çözümlemeyi doğrudan test ettim: Alt işlemin ortamına HTTP_PROXY koyduğumda istek yerel proxy’mden geçti; buna karşılık eşleşen bir NO_PROXY girdisi ekleyince sonraki istek doğru şekilde proxy’yi atladı. Yani environment-variable yolu artık gerçekten kutudan çıktığı hâliyle çalışıyor — dikkat etmeniz gereken şey, iki modun birden aynı anda devreye girmesi.

Axios’a Proxy Bağlamanın 5 Yolu (Karşılaştırmalı)

Koda geçmeden önce genel görünüm şöyle. Bu yöntemlerin her birini gerçek bir yerel proxy kurulumu üzerinde test ettim; sadece dokümantasyon okuyarak değil.

YöntemHTTPS DesteğiKimlik Doğrulamaİstek Bazında KontrolRotasyona UygunlukKarmaşıklık
Satır içi proxy seçeneği✅ (güncel Axios)✅✅❌Düşük
axios.create() varsayılanları✅ (güncel Axios)✅❌ (tüm instance için)❌Düşük
Ortam değişkenleri (HTTP_PROXY/HTTPS_PROXY)✅✅❌❌Düşük
httpsAgent + HttpsProxyAgent✅✅✅⚠️ (manuel)Orta
Request interceptor + agent havuzu✅✅✅✅Orta-Yüksek

Tek seferlik bir scriptte ve tek bir proxy’ye gidecekseniz satır içi seçeneği kullanın. Bir modüldeki her isteğin aynı proxy’den geçmesi gerekiyorsa axios.create() tercih edin. Altyapı ekibiniz proxy yönlendirmesini merkezî olarak yönetiyorsa ve siz yalnızca bunu devralmak istiyorsanız environment değişkenlerini kullanın. Yerleşik yapılandırmanın veremediği bir kontrol gerekiyorsa açık bir agent’a geçin — “kontrol” kelimesi “rotasyon” anlamına gelmeye başladığı anda ise interceptor desenine geçin.

Üç Axios proxy yönlendirme yönteminin bir HTTPS hedefte birleşmesi

Adım Adım: Axios’ta Temel Proxy Yapılandırması

En basit kurulum, isteğin üzerinde doğrudan yerleşik proxy nesnesini kullanır:

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

Bunu çalıştırdığınızda yanıtta kendi IP’niz yerine proxy’nin IP’sini görmelisiniz. Gerçek bir proxy ile yerelde test yapıyorsanız bu genellikle bir saniyeden kısa sürer — tek bir isteği denemek için sistem genelinde proxy ayarıyla uğraşmaya kıyasla çok daha pratiktir; çünkü bu tür işler on beş dakikanızı kolayca yer.

Bu yanıtı başlangıç noktanızla karşılaştırın. Başarılı bir test, daha önce kaydettiğiniz origin IP yerine proxy’nin genel IP adresini göstermelidir.

Tüm Instance İçin Varsayılanlar için axios.create() Kullanımı

Belirli bir modüldeki her istek aynı proxy üzerinden gitmeliysa, yapılandırmayı tekrar etmek yerine bir instance içine gömün:

const client = axios.create({
  proxy: {
    host: '203.0.113.10',
    port: 8080,
  },
  timeout: 15_000,
});

const res = await client.get('https://httpbin.org/ip');

Tek bir istekteki proxy: false override’ının instance varsayılanını temiz biçimde baypas ettiğini doğruladım — isteklerinizin yüzde 95’i proxy’ye ihtiyaç duyuyor ama birkaçı (mesela bir sağlık kontrolü ping’i) gerekmiyorsa çok faydalı.

Proxy’yi Environment Değişkenleriyle Ayarlama

Merkezî olarak yönetilen yönlendirme için — örneğin Docker konteynerleri ya da ops ekibinin proxy env değişkenlerini zaten ayarladığı CI ortamları — Axios yapılandırmasına hiç dokunmanıza gerek yok:

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

Güncel Axios bu değişkenleri global-agent olmadan okur. Sadece yukarıdaki Node sürüm sınırını unutmayın: NODE_USE_ENV_PROXY da aktifse, yönlendirme sahibini açıkça belirleyin ve dağıtılan çalışma zamanında NO_PROXY davranışını test edin.

Adım Adım: httpsAgent ile HTTPS Proxy Kurulumu (Gerçek Kontrol İçin)

“Bir proxy, sonsuza kadar”dan fazlasına ihtiyaç duyduğunuz anda aslında önereceğim kurulum budur. Güncel agent paketini yükleyin:

npm install https-proxy-agent

https-proxy-agent 9.1.0, Node 20 veya daha yenisini ister ve hedef bağlantıyı tünellemeden önce proxy’nize doğru bir CONNECT isteği yollar.

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,        // Axios’un yerleşik çözümlemesi de devreye girip karışmasın
  httpsAgent: agent,
  timeout: 15_000,
});

const res = await client.get('https://httpbin.org/ip');
console.log(res.data);

Yönlendirmeyi açık bir agent üstleniyorsa proxy: false kullanın. Bu, yapılandırmayı netleştirir ve Axios’un yerleşik ya da environment-proxy çözümlemesinin verilen agent ile rekabete girmesini engeller.

Proxy Kimlik Doğrulaması Ekleme

Kimlik bilgilerini doğrudan proxy URL’sine gömün:

const agent = new HttpsProxyAgent('http://myuser:mypassword@203.0.113.10:8080');

Şifrenizde özel karakterler varsa — genelde baş belası olanlar @, :, # — URL oluşturmadan önce bunları yüzde kodlamasıyla encode edin ya da her bileşeni encodeURIComponent() ile birleştirin. Şifredeki çıplak bir @, ayrıştırıcı tarafından host bölümünün başlangıcı sanılır ve size kodlamayla ilgisi belli olmayan bir bağlantı hatası döner.

Axios ile SOCKS5 Proxy Kullanımı

SOCKS proxy’ler HttpsProxyAgent ile uyumlu değildir — protokol için farklı bir agent gerekir:

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 da Node 20+ ister. SOCKS5, yalnızca SOCKS gateway açan kurumsal ağlarda ya da düz HTTP proxy’lerin sunduğundan daha esnek protokol desteği veren sağlayıcılarda kullanmaya değer.

Axios Request Interceptor’larıyla Proxy Rotasyonu

Çağıran kodunuzun içinde rastgele proxy seçmek tek seferlik bir script için işe yarar. Yüzlerce istek atmaya başladığınız anda dağılıp gider; çünkü hangi proxy’lerin öldüğünü takip eden merkezi bir yer, retry mantığı ve proxy seçme kodunun her yere kopyalanmasını engelleyen bir yapı yoktur. Axios interceptor sistemi bu mantığı test edilebilir tek bir evde toplar; bu makaledeki SERP incelemesinde yer alan beş rakip rehberin hiçbiri bu deseni kullanmadı.

Axios GET isteklerinin üç proxy arasında döndürülmesi ve bir sınırlı retry

Proxy Havuzu Oluşturma

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

Bunu iki yerel proxy üzerinde test ettim ve isteklerin sırayla değiştiğini doğruladım — proxy A, sonra proxy B, sonra tekrar A. Axios request interceptor’larını son giren ilk çıkar mantığıyla çalıştırır; dolayısıyla başka interceptor’larınız varsa (auth header’ları, loglama vb.), sıra sandığınızdan daha önemlidir.

Retry Korumalı Bir Response Interceptor Ekleme

Çoğu kendi kendine yazılmış rotasyon scriptinin dağıldığı nokta burasıdır. Sınırsız bir havuzda her hatada körlemesine yeniden denemek, tek bir hatalı isteği zincirleme bir probleme çevirebilir — özellikle POST gibi idempotent olmayan metotlarda; çünkü yeniden denemek, istemediğiniz bir yan etkiyi iki kez üretir.

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

Bunu bilerek bozuk bir proxy üzerinde test ettim ve tam olarak bir kez, alternatif agent ile retry yapıldığını doğruladım — sonsuz döngü yok, POST isteğinde retry yok. İhtiyacınız olan sınır budur: Hangi isteklerin güvenle tekrar oynatılabileceği konusunda dürüst bir retry politikası; “olana kadar tekrar dene” tarzı bir hile değil.

Axios proxy sorun giderme: cURL, 407 kimlik doğrulama ve zaman aşımı kontrolleri

Hata Teşhis Tablosu: Her Sorunu Çözümüyle Eşleştirin

Bunu yer imlerinize ekleyin. Bunlar, Axios GitHub sorunlarında ve Stack Overflow başlıklarında gerçekten görülen hatalardır; hayali olanlar değil.

Hata / BelirtiMuhtemel NedenÇözüm
ECONNREFUSEDYanlış host/port ya da proxy sunucusu kapalıAxios koduna dokunmadan önce curl -x http://host:port target-url ile doğrulayın
407 Proxy Authentication RequiredEksik ya da yanlış kimlik bilgileriproxy yapılandırmasına auth: { username, password } ekleyin ya da HttpsProxyAgent URL’sine kimlik bilgilerini gömün
403 ForbiddenOrigin ya da WAF isteği veya proxy IP’sini reddettiSitenin erişim politikasını, kimlik doğrulamasını ve istek hızını kontrol edin; farklı bir header ya da IP’yi engeli aşma izni gibi yorumlamayın
Yanıtta gerçek IP’niz görünüyorNO_PROXY, proxy:false, açık bir direct agent ya da tarihsel/sürüme özgü bir yapılandırma proxy’yi baypas ediyor olabilirHangi katmanın yönlendirmeyi yönettiğini inceleyin; yolu kontrollü bir IP uç noktasıyla doğrulayın ve gerekiyorsa açık agent kullanın
ETIMEDOUTBağlantı ya da yanıt süresi yapılandırılmış timeout’u aştıZamanın nerede harcandığını ölçün; timeout’u yalnızca iş yükü bunu haklı çıkarıyorsa artırın, aksi halde sağlıksız rotayı değiştirin ya da soğumaya bırakın
Yanıt ortasında ECONNRESETProxy, ağ ya da origin bağlantıyı kapattıHata veren sıçramayı kaydedin; yalnızca güvenle yeniden oynatılabilen istekleri, sınırlı bir bütçeyle tekrar deneyin
Nginx arkasında 502 Bad GatewayNginx proxy_pass yanlış yapılandırılmış ya da Axios timeout’u Nginx ile uyumsuzproxy_connect_timeout ve proxy_read_timeout ayarlarını kontrol edin (ikisi de varsayılan olarak 60 saniyedir) ve bunları Axios timeout değeriyle hizalayın
ERR_TLS_CERT_ALTNAME_INVALIDHedef için yanlış agent türü ya da self-signed sertifikaProtokole uygun agent kullandığınızı doğrulayın; yalnızca yerel testte rejectUnauthorized: false kullanın — üretimde asla

Hızlı Sorun Giderme Kontrol Listesi

Bir şey bozulduğunda ve nedenini çıkaramadığınızda şu sırayla ilerleyin:

  1. Proxy’yi doğrudan curl -x http://host:port https://your-target.com ile test edin. Başarısız olursa Axios’a dokunmadan önce proxy bağlantısını, kimlik doğrulamayı ve hedefi inceleyin. Geçerse Axios yolu ayrıca doğrulanmalıdır.
  2. Gerçekte hangi Axios ve Node sürümlerini çalıştırdığınızı doğrulayın; tarihsel raporları, aynı sürüm ve yapılandırma ile karşılaştırmadan düzeltmelerini uygulamayın.
  3. Proxy’yi hangi sistemin çözdüğünü bulun — yerleşik Axios yapılandırması mı, Axios’un env değişkeni çözümlemesi mi, Node’un yerleşik env-proxy modu mu, yoksa açık bir agent mı. Aynı isteği asla birden fazla sisteme sahip bırakmayın.
  4. NO_PROXY içinde yanlışlıkla eşleşen host adları olup olmadığını kontrol edin.
  5. Açık bir agent kullanıyorsanız, Axios’un çift taraflı işlemeye kalkmaması için proxy: false değerinin set edildiğini doğrulayın.

Tüm Proxy İşlerini Elle Kurmaktan Ne Zaman Vazgeçmeli?

Yukarıdakilerin hepsi, gerçek amacınız rastgele trafiği yönlendirmekse gerçekten yararlıdır — kurumsal ağ testleri, bir uygulamanın coğrafi testleri ya da kontrollü ağ çıkışı gibi. Ancak pek çok geliştirici “Axios proxy nasıl kurulur?” diye arar çünkü aslında istedikleri şey bir web sitesinden veri çekmektir; proxy ise sadece o hedefe ulaşmanın aracıdır.

Eğer durum buysa, gerçekten bir proxy’ye mi ihtiyacınız var, yoksa altyapıyı sizin yerinize yöneten bir scraping API mi işinizi daha iyi görür diye sormakta fayda var. Thunderbit’in Open API’si, bir URL ve bir şema alıp yapılandırılmış JSON döndürür — ham HTML ayrıştırma yok, agent kütüphaneleri yok, bakımı yapılacak bir proxy havuzu yok. /extract endpoint’i JavaScript ile render edilen sayfaları, anti-bot önlemlerini ve CAPTCHA’ları sunucu tarafında ele alır; sadece sayfayı temiz Markdown’a çevirmek istiyorsanız daha hafif olan /distill endpoint’i vardır. Ayrıca Claude veya Cursor gibi kod asistanlarının proxy yapılandırmasına hiç dokunmadan görev sırasında yapılandırılmış veri çekebilmesi için thunderbit_extract ve thunderbit_suggest_fields gibi araçlar sunan bir MCP sunucusu ve terminal ile CI iş akışları için bir CLI da bulunur.

KonuKendin Yap Axios + Proxy’lerThunderbit API/MCP/CLI
Proxy kaynağı ve rotasyonuSiz yönetirsinizSunucu tarafında yönetilir
Tarayıcı ve erişim zorluklarıTarayıcı/ağ katmanını siz işletirsinizHizmet, belgelenen yetenekleri dahilinde yönetir
JS ile render edilen sayfalarHeadless browser gerekirrenderMode: full
Çıktı formatıHam HTML → siz ayrıştırırsınızŞema ile yapılandırılmış JSON
Siteler değiştiğinde bakımAyrıştırma/seçicileri siz korursunuzYönetilen çıkarım katmanı, uygulama tarafındaki bakımın bir kısmını azaltır

Dürüst çerçeve şu: Trafiği test ya da kurumsal ağ için yönlendirmeniz gerekiyorsa, bunların hiçbiri Axios ve proxy yapılandırmasının yerini tutmaz. Teslim edeceğiniz şey yapılandırılmış web verisiyse, API-first yaklaşım uygulamanızın üstlendiği proxy, tarayıcı ve ayrıştırma kodunu azaltabilir. 7 Ağustos 2026 tarihinde erişim sırasında, Thunderbit’in API rate limit dokümantasyonu Free katmanı için dakikada 10 istek ve 2 eşzamanlı istek listeliyordu. Bunları zamana duyarlı API limitleri olarak değerlendirin ve üretimde bunlara güvenmeden önce sayfayı yeniden kontrol edin.

Kapanış

Buradaki temel ders, eski birçok rehberin söylediği şeye ters düşüyor: Güncel Axios, kayıtlarda görülen yerel testte HTTPS hedefi için CONNECT tünellemesini doğru şekilde kullandı ve bunu dokümante ediyor. Tarihsel hatalar hâlâ önemlidir; ancak sürüm ve yapılandırma bağlamı gerekir. Yerleşik yapılandırma düşük karmaşıklıkla iyi bir başlangıçtır; istek bazında kontrol, SOCKS desteği ya da rotasyon gerektiğinde proxy: false ile eşleştirilmiş açık bir HttpsProxyAgent (veya SocksProxyAgent) daha net sahiplik sağlar. Üretimde bir havuz üzerinden rotasyon yapıyorsanız, request ve response interceptor’ları bunu merkezi ve test edilebilir şekilde yönetmek için iyi bir yerdir — sadece retry mantığınızda döngü koruması olduğundan ve yalnızca gerçekten güvenle tekrar oynatılabilen istekleri yeniden denediğinizden emin olun.

Bir sonraki sefer bir proxy kurulumu sabaha karşı 2’de anlaşılmaz bir hata verdiğinde, yukarıdaki teşhis tablosunu yer imlerinizde tutun. Ve eğer proxy altyapısını debug etmek, almaya çalıştığınız veriyi gerçekten kullanmaktan daha fazla zamanınızı yiyorsa, API-first çıkarım aracının asıl sorunu altyapıdan çok daha hızlı çözüp çözmeyeceğine bakmaya değer.

Sık Sorulan Sorular

Axios HTTPS proxy’lerini yerleşik olarak destekliyor mu? Güncel Axios’ta, klasik bir HTTP proxy için evet: mevcut dokümantasyon HTTPS hedefler için CONNECT tünellemesini anlatıyor ve Axios 1.19.0, kaydedilen yerel testte bu rotayı geçti. Tarihsel sürümler ve belirli proxy yapılandırmaları gerçek hatalar üretti; bu yüzden mutlak başarı ya da mutlak başarısızlık varsaymak yerine tam sürümü ve proxy’yi doğrulayın.

Axios’ta proxy rotasyonunu nasıl yaparım? Her isteğin çıkmadan önce farklı bir httpsAgent atanması için bir request interceptor kullanın ve bunu, başarısız istekleri farklı bir proxy üzerinden tekrar deneyen bir response interceptor ile eşleştirin. Retry mantığını sınırlı tutun — bir retry ve yalnızca GET gibi idempotent metotlar için — böylece tekrar oynatılmaması gereken bir isteği yanlışlıkla tekrar çalıştırmazsınız.

Neden Axios proxy’m gerçek IP’mi gösteriyor? NO_PROXY, proxy:false, açık bir direct agent ya da dağıtım ortamına özgü yönlendirme proxy’yi baypas etmiş olabilir. Axios/Node sürümlerini kaydedin ve proxy’yi cURL ile bağımsız olarak test edin. Eğer istek bazında tartışmasız yönlendirme gerekiyorsa, proxy:false ile HttpsProxyAgent kullanın ve gözlenen IP’yi kontrollü bir uç noktada doğrulayın.

Axios ile SOCKS5 proxy kullanabilir miyim? Evet, socks-proxy-agent paketi üzerinden. SOCKS URL’nizle bir SocksProxyAgent örneği oluşturun ve Axios yapılandırmasında httpsAgent olarak verin — yalnızca HttpsProxyAgent de göndermediğinizden emin olun; çünkü iki protokol farklı agent türleri kullanır.

Axios’ta proxy seçeneği ile httpsAgent arasındaki fark nedir? proxy seçeneği, Axios’un tek ve sabit bir proxy için sunduğu yerleşik yapılandırmadır ve güncel sürümlerde basit kullanım senaryoları için gayet uygundur. httpsAgent ise HttpsProxyAgent ya da SocksProxyAgent gibi özel bir Node.js agent’ı kabul eder; böylece yönlendirme, kimlik doğrulama ve rotasyon üzerinde, yerleşik seçeneğin tasarlanmadığı doğrudan istek bazlı kontrol sağlarsınız.

Daha Fazla Bilgi

Ke
Ke
Thunderbit’ta CTO | Kıdemli Veri Bilimci ve ML Uzmanı Makine öğrenimi ve veri bilimi alanında yaklaşık on yıllık deneyime sahip olan Ke Shen, Columbia University mezunu ve Walmart Labs’te eski Kıdemli Veri Bilimci’dir. Python, R, Java ve İstatistik konularında derin ve meslektaşları tarafından tanınan uzmanlığıyla, karmaşık yapay zekâ algoritmalarını teoriden üretim düzeyinde mimariye taşıma konusunda sahada test edilmiş içgörüler paylaşır.
Topics
Axios proxyNode.js proxyHTTPS proxy
İçindekiler
Thunderbit · AI web veri ajanı

Herhangi bir sayfadan 1 tık içinde veri çıkar

250.000+ kullanıcı tarafından güveniliyor
ücretsiz plan mevcut
Web sayfasından tabloya
İhtiyacını anlat — Thunderbit’in AI Ajanı bunu çeker ve Excel, Google Sheets, Airtable veya Notion’a aktarır. Başlamak ücretsiz.
Chrome Store Rating
PRODUCT HUNT#1 Product of the Week