URL Encode / Decode
URL’leri güvenli biçimde kodlayın (encode) veya kodlanmış URL’leri çözün (decode).
URL Encode / Decode Nedir?
Bir web adresi (URL) yalnızca sınırlı bir karakter kümesini güvenle taşıyabilir. Boşluk, Türkçe karakterler ve bazı özel simgeler bir bağlantının içinde doğrudan kullanılamaz; kullanılırsa adres bozulur veya yanlış yorumlanır. URL encode, yani yüzde kodlama (percent encoding), bu sorunlu karakterleri yüzde işareti ve iki onaltılık rakamdan oluşan güvenli dizilere çevirir. Örneğin boşluk %20, "ve" işareti %26, soru işareti %3F olur. Decode işlemi ise bu dizileri okuyup orijinal karakterlere geri döndürür. Bu iki işlem, internetteki bağlantıların dünyanın her yerinde aynı şekilde çalışmasını sağlayan sessiz ama kritik bir standarttır.
Bu Araç Nasıl Kullanılır?
Kullanımı iki yönlüdür. Elinizde kodlamak istediğiniz düz bir metin veya adres parçası varsa, onu üstteki alana yazıp "Kodla (encode)" seçeneğiyle güvenli biçime çevirirsiniz. Tersine, içinde %20 gibi diziler bulunan karmaşık bir bağlantıyı okunur hale getirmek istiyorsanız onu yapıştırıp "Çöz (decode)" dersiniz. Sonuç anında görünür ve tek tıkla kopyalanabilir. İşlem tarayıcınızda gerçekleştiği için girdiğiniz veri hiçbir yere gönderilmez. Türkçe karakter içeren metinler de doğru kodlanır; her harf önce UTF-8 baytlarına, sonra yüzde dizilerine çevrilir; bu yüzden tek bir Türkçe harf birden fazla yüzde bloğuna dönüşebilir.
Neden Gerekli?
URL'lerde bazı karakterlerin özel bir anlamı vardır. Soru işareti sorgu bölümünü başlatır, "ve" işareti parametreleri ayırır, bölü işareti yol katmanlarını böler. Bir arama sorgusuna veya parametreye bu karakterlerden biri girdiğinizde, tarayıcı onu veri olarak değil komut olarak yorumlar ve bağlantı bozulur. Kodlama tam da bunu önler: karakterin "veri" olduğunu, "yapı" olmadığını garanti eder. Örneğin bir arama kutusuna "kar & buz" yazdığınızda, bu metin bağlantıya kar%20%26%20buz olarak eklenir ve hiçbir parçası kaybolmaz.
Ne Zaman Kullanılır?
- Bağlantı oluştururken: Bir arama veya paylaşım linkine kullanıcı metni eklerken.
- API istekleri hazırlarken: Sorgu parametrelerine özel karakter içeren değerler koyarken.
- Form verisi gönderirken: Adres çubuğuna yansıyan GET isteklerinde alan değerleri kodlanır.
- Bozuk bir linki çözerken: Uzun ve yüzde dizileriyle dolu bir adresi insanca okumak istediğinizde decode kullanırsınız.
Kodlanan ve Kodlanmayan Karakterler
Her karakterin kodlanması gerekmez. Harfler, rakamlar ve birkaç güvenli işaret (tire, alt çizgi, nokta ve yıldız gibi) olduğu gibi kalır; bunlara "korunan karakterler" denir. Kodlanması gerekenler ise yapısal anlamı olan veya adreste kafa karışıklığı yaratabilecek simgelerdir. Örneğin yüzde işaretinin kendisi %25, artı işareti %2B, boşluk %20, iki nokta üst üste %3A olarak yazılır. Türkçe bir harf olan "ç" ise UTF-8'de iki bayta karşılık geldiği için %C3%A7 biçiminde iki bloğa dönüşür. Bu ayrımı bilmek, bir bağlantının neden beklediğinizden uzun göründüğünü anlamanıza yardımcı olur.
Pratik İpuçları ve Sık Hatalar
En yaygın hatalardan biri, tüm adresi baştan sona kodlamaktır. Yalnızca parametre değerleri kodlanmalıdır; adresin başındaki protokol, alan adı ve yol yapısını kodlarsanız bağlantı tümüyle bozulur. İkinci sık hata "çift kodlamadır": zaten kodlanmış bir metni bir kez daha kodlarsanız yüzde işaretinin kendisi %25 olur ve sonuç iki kez çözülmedikçe düzelmez. Bir de artı işaretinin ikili anlamına dikkat edin; bazı bağlamlarda artı işareti boşluk yerine geçer, bazılarında ise %2B olarak kodlanması gerekir. Kaynak koddan bir değer yapıştırırken, dilinizin hazır encode fonksiyonlarını kullanmak elle kodlamaya göre çok daha güvenlidir.