URL Encode/Decode Aracı: Web İçin Güvenli Karakter Dönüşümü
URL Encode/Decode aracı, web adreslerinde ve HTTP isteklerinde kullanılamayan özel karakterleri "yüzde kodlama" (percent-encoding, RFC 3986) yöntemiyle güvenli formata dönüştürür veya kodlanmış değerleri okunabilir haline geri çevirir. URL standardı yalnızca belirli karakterleri (harfler, rakamlar ve birkaç güvenli sembol) doğrudan kullanmaya izin verir; boşluk, Türkçe harfler, & = ? # gibi rezerve karakterler URL'de geçtiğinde yanlış yorumlanmamak için kodlanmalıdır. Örneğin boşluk %20 olur, "ç" karakteri %C3%A7 şekline dönüşür. Bu dönüşüm doğru yapılmadığında 404 hataları, query string bozulmaları ve API isteklerinde parsing problemleri yaşanır.
Web geliştiriciler, SEO uzmanları, dijital pazarlamacılar ve API entegrasyonu yapanlar bu araca günlük olarak ihtiyaç duyar. UTM parametreleri ile kampanya linkleri oluştururken Türkçe kampanya isimlerini encode etmeniz gerekir; aksi takdirde Google Analytics bu kampanyaları tutarsız raporlar. OAuth callback URL'lerinde, redirect_uri parametresinde, GET ile gönderilen JSON payload'larında URL encoding zorunludur.
Nasıl Kullanılır?
- Metni yapıştırın: Encode etmek istediğiniz Türkçe karakterli veya boşluklu metni, ya da decode etmek istediğiniz %XX formatlı stringi metin kutusuna yapıştırın.
- İşlem yönünü seçin: Encode (özel karakterleri %XX'e dönüştür) veya Decode (%XX'leri orijinal karaktere çevir) modunu belirleyin.
- Çalıştırın: Sonuç anında üretilir. Encode çıktısında yalnızca güvenli ASCII karakterler kalır.
- Kullanım yerine yapıştırın: Sonucu tarayıcı adres çubuğuna, HTTP isteğine, JavaScript fetch çağrısına veya curl komutuna yapıştırın.
Sonuçları Nasıl Yorumlamalı?
Encode edilmiş bir URL'de tüm "%" işaretleri iki adet hex karakteri tarafından takip edilmelidir; %2 veya %ZZ gibi eksik veya geçersiz dizilimler decode hatası verir. Türkçe karakterler UTF-8 standardında genellikle iki byte ile temsil edildiği için her Türkçe harf iki %XX bloğu olarak görünür: "ş" → %C5%9F. Eğer çıktınızda bir karakter dört bloğa karşılık geliyorsa, muhtemelen çift encode edilmiş (örneğin %25C3%25A7 — yani önce % işareti encode edilmiş). Bu durumda decode işlemini iki kez uygulayarak orijinal metne ulaşırsınız. URL'nin path bölümü ile query string bölümü farklı encoding kurallarına sahiptir; / karakteri path'te güvenliyken query'de encode edilmelidir.
Pratik İpuçları
- UTM kampanya hijyeni: Google Analytics UTM parametreleri için
utm_campaign=yaz+indirimiyerineutm_campaign=yaz%20indirimikullanın; raporlama tutarsızlığını önler. - JavaScript karşılığı: Tarayıcıda
encodeURIComponent()vedecodeURIComponent()aynı işi yapar; ancak hızlı kontrol için online araç pratiktir. - API key güvenliği: API anahtarlarında özel karakter varsa, URL parametresi olarak göndermeden önce mutlaka encode edin; aksi takdirde imza doğrulaması başarısız olur.
- Çift encoding tespiti: Eğer URL'inizde
%25görüyorsanız, % işaretinin kendisinin tekrar encode edildiğini gösterir. Decode'u iki kez uygulamanız gerekir. - SEO dostu URL: Public URL'lerde Türkçe karakter kullanmak yerine slug formatına dönüştürmek hem encoding sorunu yaratmaz hem de okunabilirliği artırır.
Sık Yapılan Hatalar
- Tüm URL'i encode etmek:
https://example.com/path?q=test'in tamamını encode edersekhttps%3A%2F%2F...elde ederiz ki bu artık geçerli URL değildir. Yalnızca parametre değerlerini encode edin. - Boşluğu + ile karıştırma: Form-urlencoded gönderimde boşluk + olarak kodlanır, ama URL path'inde %20 olur. Bağlamı doğru tanımayan kütüphaneler bug üretir.
- Türkçe karakter eksiltme: Bazı eski sistemler ç→c, ş→s gibi kayıplı dönüşüm yapar. Hassas verilerde encode kullanın, slug istiyorsanız ayrı araç tercih edin.
İlgili Araçlar ve Hizmetler
SEO uyumlu URL parçacıkları için URL Slug Oluşturucu idealdir; Türkçe başlıkları otomatik dönüştürür. API isteklerinizdeki JSON gövdeleri okumak için JSON Formatlayıcı, binary verileri taşımak için Base64 Çevirici kullanın. Tüm geliştirici araçları için Ücretsiz Servisler sayfasına bakın.
Takiplus URL Encode/Decode aracıyla web isteklerinizdeki karakter problemlerini kalıcı olarak çözün ve API entegrasyonlarınızda 400 / 404 hatalarına son verin.