Chuyển đến nội dung chính

Cách mã hóa URL cho một chuỗi

Mã hóa phần trăm thay mỗi ký tự không an toàn trong URL bằng % và giá trị thập lục phân của từng byte UTF-8 của ký tự đó. Chế độ Thành phần, dùng encodeURIComponent(), phù hợp cho một giá trị truy vấn hoặc một đoạn đường dẫn.

Ví dụ minh họa

Ký tựByte UTF-8Thành phần
␠%20%20
&%26%26
=%3D%3D
/%2F%2F
?%3F%3F
é%C3 %A9%C3%A9
😀%F0 %9F %98 %80%F0%9F%98%80

Chế độ Thành phần mã hóa cả cụm từ thành một giá trị an toàn duy nhất.

Đầu vào
rock & roll/size=XL? café 😀
Kết quả · encodeURIComponent()
rock%20%26%20roll%2Fsize%3DXL%3F%20caf%C3%A9%20%F0%9F%98%80

Chế độ URL đầy đủ giữ nguyên & = / ?, vì vậy chỉ dùng nó cho một URL hoàn chỉnh.

Đầu vào
rock & roll/size=XL? café 😀
Kết quả · encodeURI()
rock%20&%20roll/size=XL?%20caf%C3%A9%20%F0%9F%98%80

Cách công cụ xử lý

  • Chữ cái A–Z và a–z, chữ số 0–9 cùng - _ . ! ~ * ' ( ) không bao giờ bị thay đổi.
  • Mọi ký tự khác được chuyển thành byte UTF-8, và mỗi byte được viết là % kèm hai chữ số thập lục phân viết hoa: é chiếm hai byte, phần lớn emoji chiếm bốn byte.
  • Chế độ Thành phần cũng mã hóa các ký tự dành riêng : / ? # [ ] @ & = + $ , ; để chúng không thể thay đổi cấu trúc của URL.

Hướng dẫn mã hóa URL