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
| Karakter | UTF-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.