HAR → JSON & HAR → cURL
HAR dosyalarını temiz JSON’a ve tekrar üretilebilir cURL’e dönüştür — hızlı, deterministik ve gizlilik odaklı.
Yükleme olmadan HAR araçları
HAR dosyaları — HTTP Archive’in kısaltması — bir tarayıcının ağ etkinliğini yakalama ve paylaşmanın standart yolu ve format, bir sayfanın neden yavaş olduğunu, bir API çağrısının neden başarısız olduğunu ya da istemci ile sunucu arasında gerçekten hangi verinin hareket ettiğini bulmayı içeren neredeyse her web hata ayıklama oturumunda merkezi bir rol oynuyor. Her modern tarayıcının DevTools ağ paneli tek tıkla HAR’a dışa aktarabiliyor; her isteği, yanıtı, başlığı, zamanlamayı ve (isteğe bağlı) gövdeyi içeren JSON dosyası üretiyor. Sorun, ortaya çıkan HAR dosyasının ham formda esasen okunamaz olması — ayrıntılı, derin iç içe, kimsenin okumadığı metaverilerle dolu ve çoğu kişinin yanlışlıkla paylaşmak istemeyeceği içerikleri barındırıyor. Bu araç gürültülü ham HAR ile gerçekten çalışabileceğin bir şey arasındaki köprü.
İnsanların HAR dosyalarını dönüştürmesinin en yaygın sebebi, hata ayıklama sırasında bunları takım arkadaşlarıyla paylaşmak. Bir backend geliştiricisi, başarısız bir API çağrısını gösteren bir HAR dosyasını frontend geliştiricisine veriyor; frontend geliştiricisi sorunu beş dakikada bulmayı bekleyerek dosyayı açıyor ve modern sayfa yüklemelerini oluşturan yüzlerce ilgisiz takip pikseli isteği, font ön yüklemesi ve CDN’den servis edilen statik varlıklar arasında on beş dakika kaydırarak harcıyor. İlgili isteklere — alan adına, durum koduna veya içerik türüne göre — indirgemek, HAR dosyasını samanlıktan odaklı bir hata ayıklama nesnesine dönüştüren şey. Buradaki araç bu filtreleri tek tıklık operasyonlar olarak sunuyor; ‘sadece API isteklerini gönderir misin’ ileri‑geri trafiği gereksiz hâle geliyor.
Gizlilik düşünceleri HAR paylaşımının nasıl çalışması gerektiğinin merkezinde; çünkü HAR dosyaları sıkça şirketin dışına çıkmaması gereken içerik içeriyor. Bearer token taşıyan Authorization başlıkları, oturum kimliği taşıyan Cookie başlıkları, kullanıcı girdisi içeren istek gövdeleri, kullanıcı verisi içeren yanıt gövdeleri — paylaşmadan önce kasıtlı olarak çıkarılmadıkları sürece bunların hepsi HAR dosyalarına düşüyor. Buradaki varsayılan davranış bariz sırları (Authorization, Cookie, yaygın token parametre adları) otomatik maskeliyor; bu, en yaygın kazara ifşa kalıbını yakalıyor. Bu varsayılanların ötesinde gerçekten hassas veri içeren HAR dosyaları için kural, neyin paylaşılacağı ve neyin paylaşılmayacağı konusunda bilinçli olmak ve dosyayı takım dışına göndermeden önce maskelemeyi doğrulamak.
HAR’dan cURL’e dönüşüm, bu aracın en sık düzenli kullanım gören diğer yarısı. Bir HAR dosyasından başarısız bir isteği yeniden üretmek, en yaygın hata ayıklama görevlerinden biri: DevTools’ta başarısız olan isteği görüyorsun, neyin değiştiğini görmek için küçük değişikliklerle yeniden çalıştırmak istiyorsun; ama bunu manuel olarak yeniden üretmek URL’yi, başlıkları, gövdeyi ve metodu karakter karakter cURL komutuna kopyalamayı gerektiriyor — yavaş ve hata yatkın. HAR’dan cURL’e dönüşüm, tarayıcının gönderdiği şeyle byte‑bayt aynı, çalıştırmaya hazır bir cURL komutu üretiyor; bu, terminalden çalıştırmak tarayıcının yaptığı tam isteği yeniden üretiyor anlamına geliyor. Oradan parçaları değiştirebiliyorsun (farklı bir Authorization başlığıyla deneyebilirsin, belirli bir çerezi atlayabilirsin, sorgu parametresini değiştirebilirsin) ve başarısızlığa gerçekten neden olanı izole edebiliyorsun.
Kullanım alanları
.har yakalamasını temiz bir HAR JSON çıktısına dönüştürüp grep/diff yapın ve hata raporlarına ekleyin. “har json dönüştürücü”, “har dosyası json yap” ve “har to json” gibi pratik senaryolar için ideal.
Bir kaydı seçip metot, URL, header ve mümkünse body ile cURL komutu oluşturun. “har to curl”, “har’dan curl komutu üret” ve “chrome har curl oluştur” ihtiyaçlarını karşılar.
Alan adı/metot/durum filtreleyip birden fazla isteği script olarak indirerek tekrar çalıştırılabilir bir akış oluşturun. “har toplu curl export” ve “tüm istekleri curl’e çevir” gibi durumlarda kullanışlıdır.
Authorization/Cookie gibi header’lar ve token benzeri query parametreleri varsayılan olarak maskelenir. Böylece “har maskele”, “har cookie kaldır” ve “sanitized har” çıktıları daha güvenli paylaşılır.
Sadece hatalar modunu kullanarak binlerce kayıt içinde başarısız istekleri anında çıkarın. “har 4xx 5xx filtre” ve “har hataları dışa aktar” için hızlı bir yol.
JSON/HTML/metin/görsel gibi içerik türlerini gruplandırıp yönlendirme, cache, CORS ve içerik pazarlığı (content negotiation) problemlerini daha hızlı analiz edin.
SSS
HAR dosyası nedir?
HAR (HTTP Archive), tarayıcının ağ isteklerini/yanıtlarını JSON formatında dışa aktardığı bir kayıttır. Header’lar, çerezler, süreler ve opsiyonel body’ler içerir.
HAR dosyam sunucuya yükleniyor mu?
Hayır. İşleme tamamen tarayıcı içinde yapılır; yükleme veya ağ çağrısı yoktur.
Neden Authorization ve Cookie maskeleniyor?
HAR dosyaları kimlik bilgisi içerebilir. Varsayılan maskeleme, çıktıları paylaşırken sızıntı riskini azaltır.
JSON çıktısına body’leri dahil edebilir miyim?
Evet, ama varsayılan kapalıdır ve uyarı gösteririz. Body’ler token veya kişisel veri içerebilir.
Yanıt önizlemesi neden bazen yok?
Yanıt body’si base64 (binary) ise önizlemeyi güvenlik için atlayabiliriz. Gerekirse Base64 aracında çözebilirsiniz.
Belirli bir istek için cURL nasıl üretilir?
Listeden bir kaydı seçin ve cURL oluştur butonunu kullanın. Detay panelinden de oluşturabilirsiniz.
Birden fazla istek için cURL dışa aktarabilir miyim?
Evet. Kapsamı “Filtrelenmiş kayıtlar” yapın ve script olarak indirin.
PowerShell destekli mi?
Evet. Kabuk seçimini PowerShell yaparak curl.exe uyumlu çıktı alabilirsiniz.
Hangi HAR şeması destekleniyor?
Geçerli bir JSON içinde log.entries alanını bekleriz. Fazla alanlar yok sayılır; güvenilir istek/yanıt verisine odaklanırız.
Chrome’dan HAR nasıl alınır?
DevTools → Network’u açın, sayfayı yenileyin; ardından istek listesine sağ tıklayıp “Save all as HAR with content” seçin.