Nasıl kullanılır?
- Metni ya da bağlantıyı Metin ya da URL kutusuna yapıştırın.
- İşlem alanından Kodla ya da Çöz seçeneğini seçin.
- Arama kelimesi gibi tek bir değer için Kapsam alanında Tek değer kalsın. Tüm bağlantı için Tam bağlantı seçin.
- Sonuç kutusunu okuyun; metin sorgu içeren bir bağlantıysa Sorgu parametreleri tablosuna da bakın.
Yüzde kodlama ne yapar?
Bir web adresinde yalnızca az sayıda karakter bulunabilir. Diğer her karakter, UTF-8 biçimindeki her bayt için bir % işareti ve iki onaltılık rakamla yazılır. Örneğin ç harfi %C3%A7, boşluk ise %20 olur. Kurallar RFC 3986, bölüm 2.1'de yazılıdır.
ç → UTF-8 baytları C3 A7 → %C3%A7
- Tek değer kapsamında yalnızca A-Z, a-z, 0-9 ve - _ . ! ~ * ' ( ) karakterleri olduğu gibi kalır; gerisi kodlanır.
- Çözmede her geçerli %XX önce bayta, ardından bayt dizisi de yazıldığı harfe çevrilir.
Tek değer ya da tam bağlantı
Tek değer ayırıcı işaretleri de (: / ? # & = ve +) kodlar; böylece bir sorgu değeri adresin yapısını bozamaz. Tam bağlantı bu işaretleri olduğu gibi bırakır ve bağlantının biçimini korur. Tam bir bağlantıyı çözerken %2F gibi bir ayırıcıyı temsil eden kaçış da kodlu kalır; bağlantı böylece aynı anlamı taşır.
Form kodlaması ve + işareti
HTML formları boşluğu + ile, artı işaretini %2B ile yazar. Formdan gelen bir sorgu dizesinde + işareti bu yüzden boşluk demektir. Form kodlaması seçeneği bu kuralı hem okur hem yazar. Seçenek kapalıyken + işareti RFC 3986'nın dediği gibi artı olarak kalır.
Çözmenin reddettikleri
- Arkasında iki onaltılık rakam bulunmayan % işaretleri, örneğin %E0%A4%A sonundaki kaçış.
- Geçerli UTF-8 oluşturmayan kaçışlar, örneğin tek başına %FF.
- Kodlanamayan bozuk karakterler, örneğin bir emojinin yarısı.
Örnek: bir arama bağlantısı
Tek değer ile Ankara & İzmir? kodlanınca Ankara%20%26%20%C4%B0zmir%3F çıkar. Boşluk, ve işareti, UTF-8'de iki bayt tutan büyük İ harfi ve soru işareti kodlanır.
Tam bağlantı ve Form kodlaması işaretliyken https://example.com/ara?q=%C3%A7ay+kahve&page=2 bağlantısı çözülünce https://example.com/ara?q=çay kahve&page=2 çıkar. Sorguda iki parametre vardır: q çay kahve, page ise 2.
| Girdi | Sonuç |
|---|---|
| Ankara & İzmir? (Tek değer, kodla) | Ankara%20%26%20%C4%B0zmir%3F |
| https://example.com/ara?q=%C3%A7ay+kahve&page=2 (çöz) | https://example.com/ara?q=çay kahve&page=2 |
Sık sorulan sorular
encodeURI ile encodeURIComponent arasındaki fark nedir?
encodeURIComponent her ayırıcı işareti kodlar; bu yüzden bir sorgu değerine uygundur. encodeURI ise bağlantıyı bağlantı yapan : / ? # & ve = işaretlerini korur; bu yüzden tam bir bağlantıya uygundur. Tek değer birincisi, Tam bağlantı ikincisidir.
Boşluk bir yerde %20, başka bir yerde + neden oluyor?
%20, boşluğun standart kaçışıdır ve bağlantının her yerinde geçerlidir. + ise yalnızca form kodlamasında boşluk demektir. Bağlantı bir formdan geliyorsa Form kodlaması seçeneğini işaretleyin.
%E0%A4%A neden reddediliyor?
%E0 üç baytlık bir harfin başıdır, ama metin %A'dan sonra bitiyor ve kaçış tamamlanmıyor. Her % işaretinin arkasında iki onaltılık rakam olmalı, her bayt da eksiksiz bir UTF-8 karakterinin parçası olmalıdır.
Bağlantım bir sunucuya gönderiliyor mu?
Hayır. Kodlama ve çözme tarayıcınızda yapılır. Jeton ya da özel veri içeren bağlantılar cihazınızdan çıkmaz.
Çözdüğüm parametrelerde artı işareti neden kalıyor?
Form kodlaması kapalıysa + işareti RFC 3986'ya göre artı olarak kalır. Birçok web formu boşluğu + ile yazdığı için bu tür bağlantıları formun kastettiği gibi okumak üzere seçeneği işaretleyin.
Kaynaklar
- RFC 3986: Üniform Kaynak Tanımlayıcı (URI) genel sözdizimi, bölüm 2.1 (IETF)
- ECMA-262: ECMAScript belirtimi, encodeURI, encodeURIComponent ve decodeURI
- WHATWG URL Standardı: form kodlaması (application/x-www-form-urlencoded)
Rakamlar ve metin en son 10 Kasım 2026 Salı tarihinde kontrol edildi.