Ham HTTP İstek Doğrulayıcı
Ham HTTP istek metnini ayrıntılı istek meta verileriyle doğrulayın ve ayrıştırın.
Girdi
Çıktı
Sonuç
Değer yok
Readme
Ham HTTP isteği nedir?
Ham HTTP isteği, ağ üzerinden iletildiği haliyle bir HTTP mesajının düz metin temsilidir. Bir istek satırından (method, URL ve HTTP sürümü), ardından header alanlarından (anahtar-değer çiftleri), boş bir satırdan ve isteğe bağlı bir body'den oluşur. Örneğin, basit bir GET isteği GET /index.html HTTP/1.1 şeklinde görünür ve ardından Host: example.com gibi header'lar gelir.
Ham HTTP isteklerini anlamak, web geliştirme, API hata ayıklama ve ağ sorunlarını giderme açısından temel bir beceridir. cURL, Wireshark ve tarayıcı geliştirici araçları gibi araçlar, istekleri genellikle ham formatta görüntüler. Bu ham mesajları okuyup doğrulayabilmek, geliştiricilerin hatalı biçimlendirilmiş header'lar, yanlış içerik uzunlukları, eksik host header'ları veya protokol sürümü uyuşmazlıkları gibi sorunları teşhis etmesine yardımcı olur.
Araç açıklaması
Ham HTTP İstek Doğrulayıcı, ham HTTP istek mesajlarını ayrıştırır ve doğrular. İstek satırı, header'lar ve isteğe bağlı body dahil olmak üzere eksiksiz bir ham HTTP isteği yapıştırın; araç, bunun geçerli HTTP sözdizimine uygun olup olmadığını kontrol eder. İstek geçerliyse, HTTP method'u, URL, HTTP sürümü, host, header sayısı ve body boyutu (bayt cinsinden) gibi temel ayrıntıları çıkararak görüntüler. İstek hatalı biçimlendirilmişse, belirli ayrıştırma hatasını raporlar.
Özellikler
- Tam istek ayrıştırma: İstek satırı, header'lar ve body dahil olmak üzere HTTP mesajının tüm yapısını doğrular
- Ayrıntılı alan çıkarımı: Ayrıştırılan method, URL, HTTP sürümü, host header'ı, header sayısı ve body bayt sayısını görüntüler
- Hata raporlama: İstek eksik veya hatalı biçimlendirildiğinde belirli hata mesajları sağlar
- Önceden doldurulmuş örnek: Beklenen formatı hemen görebilmeniz için örnek bir POST isteği içerir
- Standartlara dayalı ayrıştırma: Node.js tarafından kullanılan ayrıştırma mantığının aynısını uygulayan
http-parser-jskütüphanesini kullanır
Nasıl çalışır
Araç, Node.js için başlangıçta C dilinde yazılmış HTTP parser'ının JavaScript uygulaması olan http-parser-js'yi kullanır. Ham bir istek yapıştırdığınızda, parser bunu bayt bayt işler; istek satırını tanımlar, her header çiftini çıkarır, body'yi biriktirir ve mesajın tamamlanıp tamamlanmadığını kontrol eder. Parser bir sözdizimi hatasıyla karşılaşırsa veya mesaj eksikse (son boş satır ya da belirtilen body içeriği eksikse), hatayı raporlar. Başarılı olması durumunda, ayrıştırılan bileşenler yapılandırılmış çıktı alanlarında görüntülenir.
Sınırlamalar
- Yalnızca HTTP/1.x: Parser, HTTP/1.0 ve HTTP/1.1 isteklerini işler. HTTP/2 binary frame'leri desteklenmez
- Yalnızca istek: Bu araç HTTP isteklerini doğrular, HTTP yanıtlarını değil
- Anlamsal doğrulama yapılmaz: Parser yapısal doğruluğu kontrol eder, ancak belirli header değerlerinin mantıksal olarak geçerli olup olmadığını doğrulamaz (örneğin, bir Content-Type'ın gerçek body formatıyla eşleşip eşleşmediği)
Kullanım senaryoları
- API hata ayıklama: Sunucuya göndermeden önce log'lardan, proxy'lerden veya belgelerden yakalanan ham istekleri doğrulayın
- HTTP öğrenimi: Farklı method'lar, header'lar ve body formatlarıyla deneyler yaparak HTTP mesajlarının yapısını inceleyin
- Güvenlik analizi: Sızma testi veya log incelemesi sırasında karşılaşılan şüpheli ya da alışılmadık HTTP isteklerini inceleyip doğrulayın