Ana içeriğe geç

Bir metin URL için nasıl kodlanır

Yüzde kodlama, URL'de güvenli olmayan her karakteri % ve ardından karakterin her UTF-8 baytının onaltılık değeriyle değiştirir. encodeURIComponent() kullanan Bileşen modu, tek bir sorgu değeri veya yol parçası için doğru seçimdir.

Çözümlü örnek

KarakterUTF-8 baytlarıBileşen
␠%20%20
&%26%26
=%3D%3D
/%2F%2F
?%3F%3F
é%C3 %A9%C3%A9
😀%F0 %9F %98 %80%F0%9F%98%80

Bileşen modu cümlenin tamamını tek ve güvenli bir değer olarak kodlar.

Girdi
rock & roll/size=XL? café 😀
Sonuç · encodeURIComponent()
rock%20%26%20roll%2Fsize%3DXL%3F%20caf%C3%A9%20%F0%9F%98%80

Tam URL modu & = / ? işaretlerini olduğu gibi bırakır; bu yüzden onu yalnızca eksiksiz bir URL'de kullanın.

Girdi
rock & roll/size=XL? café 😀
Sonuç · encodeURI()
rock%20&%20roll/size=XL?%20caf%C3%A9%20%F0%9F%98%80

Araç bunu nasıl işler

  • A–Z ve a–z harfleri, 0–9 rakamları ve - _ . ! ~ * ' ( ) asla değiştirilmez.
  • Diğer her karakter UTF-8 baytlarına çevrilir ve her bayt % ile iki büyük harfli onaltılık rakam olarak yazılır: é iki bayt, çoğu emoji dört bayttır.
  • Bileşen modu ayrılmış karakterleri de (: / ? # [ ] @ & = + $ , ;) kodlar; böylece bunlar URL'nin yapısını değiştiremez.

URL kodlama kılavuzları