Ücretsiz Dönüştürücü

URL Kodlayıcı / Kod çözücü

URL'leri ve URI bileşenlerini tarayıcınızda anında kodlayın ve kodunu çözün. Ücretsiz, özel ve yükleme gerektirmez.

Veya

Bu araç hakkında

URL kodlaması (resmi olarak yüzde kodlaması, RFC 3986'da tanımlanmıştır), URL'lerde özel anlam taşıyan karakterleri (boşluklar, eğik çizgiler, ve işaretleri, karma işaretleri) yüzde işaretlerini ve ardından onaltılık rakamları kullanarak güvenli bir forma dönüştürür. Boşluk karakteri %20 olur (veya form kodlu bağlamlarda +), ve işareti %26 olur vb. Bu kodlama olmadan, özel karakterler gerçek veriler yerine URL sözdizimi olarak yorumlanarak URL'nin bozulmasına veya istenmeyen davranışlara neden olur.

Birbiriyle ilişkili ancak farklı iki kodlama mevcuttur. Standart URL bileşeni kodlaması, ayrılmamış karakter kümesinin dışındaki her şey için %-kaçışları kullanır: A-Z, a-z, 0-9, kısa çizgi, alt çizgi, nokta, yaklaşık işareti. Form kodlu değişken (application/x-www-form-urlencoded) ayrıca boşlukları artı işareti olarak ele alır ve diğer bazı karakterler için farklı kurallar kullanır. JavaScript'in encodeURIComponent katı bileşen kodlamasını kullanır; encodeURI, URL yapısı karakterlerini koruyan daha hoşgörülü bir form kullanır.

Bu araç hem kodlama hem de kod çözme olanağı sunar. Kodlama modu, çıkış gerektiren her karakteri %HH biçiminde sarar; kod çözme modu dönüşümü tersine çevirir. Her ikisi de yerleşik JavaScript URL işlevlerini kullanarak tamamen tarayıcınızda çalışır, dolayısıyla hiçbir yere veri gönderilmez.

Neden URL'leri Kodlama veya Kod Çözme

Bir URL'ye veri eklendiğinde (sorgu dizesi parametreleri, kullanıcı girişini içeren yol bölümleri, yönlendirme hedefleri) uygun kodlama gerekir. Kodlamanın başarısız olması, özel karakterler göründüğünde bozulan, sorgu dizelerine parametre sınırlarını sızdıran (&x=1'i ayrı bir parametreye dönüştüren) veya hatalı biçimlendirilmiş istekler olarak web sunucuları tarafından engellenen URL'ler üretir.

Kod çözme bunun tersidir: orijinal verileri kodlanmış bir URL'den çıkarmak. Tarayıcı adres çubukları genellikle URL'leri kodlanmış biçimde gösterir; Kod çözme aslında neyin amaçlandığını ortaya çıkarır. Günlüğe kaydetme, hata ayıklama ve güvenlik analizinin tümü, orijinal parametreleri ve yolları gösteren kodu çözülmüş URL'lerden yararlanır.

Nasıl kullanılır

Bir dize yapıştırın, yönü seçin.

  1. Kodlamayı veya kod çözmeyi seçin: Kodlama, güvenli olmayan karakterleri %HH biçiminde kaydırır. Kod çözme işlemi tersine çevrilir %HH, gerçek karakterlere geri döner.
  2. Giriş metni ekle: Kodlamak veya kodunu çözmek için dizeyi yapıştırın. Kodlama için bu genellikle boşluklar, özel karakterler veya ASCII olmayan içerik içeren gerçek bir değerdir. Kod çözme için bu, %HH kaçışlarını içeren bir URL veya URL bileşenidir.
  3. Dönüştür: Araç, encodeURIComponent veya decodeURIComponent'i uygular. Kodlanmış çıktının bir URL'ye yerleştirilmesi güvenlidir; kodu çözülmüş çıktı orijinal değişmez değerdir.
  4. Kopyala veya indir: Sonucu ihtiyacınız olan her yerde kullanın. Kodlanmış değerler URL'lere sığar; kodu çözülmüş değerler orijinal verileri ortaya çıkarır.

Yaygın Kullanım Durumları

Teknik Detaylar

encodeURIComponent, ayrılmamış kümenin [A-Za-z0-9-_.~] dışındaki her karakteri kodlar. Boşluklar %20 olur, artı işaretleri %2B olur, eşittir işaretleri %3D olur vb. ASCII dışındaki karakterler önce UTF-8 olarak kodlanır ve ardından her bayta %-kaçış karakteri uygulanır.

encodeURI daha hoşgörülüdür ve bileşenler yerine tam URL'ler için tasarlanmıştır. /, ?, &, =, # ve diğer birkaç karakterden kaçmaz çünkü bu karakterlerin URL sözdizimi anlamı vardır. Kullanıcı verilerini bir URL'ye gömmek için encodeURIComponent neredeyse her zaman doğru seçimdir.

decodeURIComponent %-escapes'i tersine çevirerek her kaçışın iyi biçimlendirildiğini ve elde edilen baytların geçerli UTF-8 oluşturduğunu doğrular. Yanlış biçimlendirilmiş giriş, çöp üretmek yerine hata verir.

En İyi Uygulamalar

Sık sorulan sorular

Hangi karakterlerin URL kodlamasına ihtiyacı var?
Ayrılmış karakterler (&, =, ?, #, /, :, @) ve güvenli olmayan karakterler (boşluk, <, >, {, }, |, ^, ~, [, ], `) kodlanmalıdır. Alfasayısal karakterler ve -_.~ güvenlidir ve kodlama gerektirmez.
encodeURI ve encodeURIComponent arasındaki fark nedir?
encodeURI tam URL'yi kodlar ancak ayrılmış karakterleri (://?#) korur. encodeURIComponent -_.!~*'() dışındaki her şeyi kodlar; bunu sorgu parametresi değerleri için kullanın. Bu araç her iki modu da sunar.
URL'lerde boşluklar nasıl kodlanır?
Boşluklar %20 (standart yüzde kodlama) veya + (form kodlama) olarak kodlanabilir. %20 URL yolları için doğrudur, + ise HTML formlarındaki sorgu dizelerinde kullanılır. Bu araç varsayılan olarak %20'yi kullanır.
Unicode karakterleri kodlayabilir miyim?
Evet. Unicode karakterler önce UTF-8 bayt olarak kodlanır, ardından her bayt yüzde olarak kodlanır. Örneğin, '日' %E6%97%A5 olur (her biri yüzde kodlu üç UTF-8 bayt).
EncodeURI'yi mi yoksa encodeURIComponent'i mi kullanmalıyım?
Neredeyse her zaman encodeURIComponent. encodeURI'yi yalnızca tam bir URL'niz varsa ve yapısını korumak istiyorsanız kullanın; URL'leri zaten bileşenlerden oluşturduğunuz için genellikle nadirdir.
Verilerim bir sunucuya yüklendi mi?
Hayır. URL kodlama ve kod çözme tamamen tarayıcınızda gerçekleşir.
Unicode emojiyi işliyor mu?
Evet. Emojiler çok baytlı UTF-8 dizileridir; kodlayıcı, kod çözücülerin orijinal emojiye doğru şekilde yeniden birleştirdiği %-kaçan baytlardan oluşan bir zincir üretir.
Girişimde aslında kodlanmamış %HH görünümlü dizeler varsa ne olur?
Kodlama her %'yi %25'e dönüştürür, ardından geri kalanı için kaçış işlemini yeniden uygular. Katı girişin kodunun çözülmesi, hatalı biçimlendirilmiş kaçışlarda hatalara neden olur; belirsiz görünen dizelerin kodu yanlış çözülebilir.