URL Kodlayıcı ve Çözücü
URL'ler ve sorgu dizeleri için metni yüzde kodlamasıyla kodlayın, kodlanmış URL'leri çözün ve herhangi bir URL'yi, sorgu parametreleri çözülmüş olarak parçalarına ayırın.
Tarayıcınızda çalışırKayıt gerekmezHiçbir şey yüklenmez
Bileşenler
Sorgu parametreleri
URL Encode / Decode nasıl kullanılır?
- Kodla veya Çöz seçeneğini belirleyin.
- Kodlarken tek bir sorgu değeri veya yol parçası için Bileşen'i, URL yapısını korumak için Tam URL'yi ya da Form verisi'ni (
application/x-www-form-urlencodediçin) seçin. - Metninizi yapıştırın. Sonuç anında görünür; hatalı kaçış dizileri konumlarıyla birlikte bildirilir.
- Host, yol, fragment ve çözülmüş tüm sorgu parametrelerini görmek için tam bir URL'yi URL ayrıştırıcı'ya yapıştırın.
URL kodlama nedir?
URL'ler yalnızca sınırlı bir ASCII karakter kümesi içerebilir (RFC 3986). Boşluklar, İngilizce dışındaki harfler ve &, ? ve # gibi özel anlamı olan karakterler dahil geri kalan her şey, her UTF-8 baytı için bir yüzde işareti ve ardından iki hex basamakla yazılır. Boşluk %20, é ise %C3%A9 olur.
encodeURIComponent ve encodeURI
| Fonksiyon | Dokunmadıkları | Kullanım alanı |
|---|---|---|
encodeURIComponent | A-Z a-z 0-9 - _ . ~ | Tek bir sorgu değeri, yol parçası veya parametre adı |
encodeURI | Ek olarak : / ? # [ ] @ ! $ & ' ( ) * + , ; = | Yapısı korunması gereken tam bir URL |
Bir sorgu değerinde encodeURI kullanmak klasik bir hatadır: değerin içindeki & kaçışlanmaz ve parametreyi ikiye böler. Bu aracın Bileşen modu, katı RFC 3986 uyumluluğu için ! ' ( ) * karakterlerini de kaçışlar.
Boşluk için %20 mi, + mı?
Yollarda boşluk %20 olmalıdır. HTML form gönderimlerinde (application/x-www-form-urlencoded) ve birçok sorgu dizesinde ise boşluk + olarak yazılır. Çözerken form verisi için + işaretini boşluk say'ı açın; jane+test@example.com örneğindeki gibi düz bir artı işaretinin önemli olduğu durumlarda kapatın.
Sıkça sorulan sorular
Çözerken neden “Malformed escape” (hatalı kaçış) hatası alıyorum?
% işaretinden sonra tam olarak iki hex basamak gelmelidir. “%50 indirim” gibi bir ifadedeki düz yüzde işareti %25 olarak kodlanmış olmalıydı. Hata, hatalı dizinin konumunu gösterir.“Invalid UTF-8 byte sequence” ne anlama geliyor?
%C3%A9 yerine %E9) ya da dize bir karakterin ortasından kesildiği için.URL'nin tamamını mı yoksa yalnızca parametreleri mi kodlamalıyım?
= ve & ile birleştirin. Tam bir URL'yi bileşen moduyla kodlamak :// kısmını da kaçışlar ve URL'yi bozar.Çift kodlama sorun olur mu?
%20'yi %2520'ye çevirir. Ardından hex basamaklar gelen %25 görüyorsanız, değer büyük olasılıkla iki kez kodlanmıştır. Orijinali elde etmek için iki kez çözün.