URL Parser
URL bileşenlerini ve query parametrelerini ayrıştırır.
Bu araç tarayıcınızda çalışır. Veriler dışarı çıkmaz.
- Protocol
- Origin
- Host
- Hostname
- Port
- Pathname
- Hash
- Username
- Password
Query parametreleri
| Anahtar | Değer |
|---|
Nasıl Çalışır
Bir URL altı bileşenden oluşur: protocol, host, port, pathname, search, hash. Bu
araç JavaScript’in WHATWG URL standardını uygulayan yerleşik URL sınıfını
kullanır.
WHATWG vs RFC 3986
İki ana spec’i bilmek faydalı:
- RFC 3986 — eski, daha katı. Tarihte Java/PHP gibi diller bunu temel aldı.
- WHATWG URL Living Standard — modern, tarayıcıların kullandığı. Daha bağışlayıcı.
İki spec arasında bazı URL’ler farklı parse edilebilir. Örnek: http://example.com
sonunda / eklenmeli mi (WHATWG: evet, RFC 3986: zorunlu değil).
Bu araç WHATWG sürümünü kullanır — yani modern tarayıcıların kullandığı yorum.
Yaygın bug kaynakları
URLSearchParamsher zaman değerleri string olarak verir.?count=5okurkenNumber(searchParams.get('count'))yapmak gerek.- Tekrarlanan parametreler:
?tag=a&tag=biçinsearchParams.get('tag')sadece ilk değeri verir.searchParams.getAll('tag')her ikisini. - Percent encoding:
%20boşluk,+ise sadece query string’de boşluk anlamına gelir. Pathname’de+ham karakterdir. - IDN (Türkçe domainler):
münir.comparse edilirkenxn--mnir-loa.com(punycode) olarak normalize edilir.
Pathname trailing slash’i
/users ve /users/ aynı kaynağı mı temsil eder? Pratikte:
- REST API’ler genellikle ayırt etmez.
- Static dosya sunucuları ayırt edebilir (
/users/index’e yönlendirir). - SEO açısından canonical bir form seçin ve diğerinden redirect.
Gizlilik
Yapıştırdığınız URL tamamen tarayıcınızda işlenir.