Bộ mã hóa / giải mã URL
URL chỉ cho phép một số ký tự ASCII nhất định không thoát — dấu cách, ký hiệu và Unicode phải được mã hóa phần trăm (%20, %26, byte UTF-8).
Cách mã hóa hoặc giải mã URL
1. Chọn mã hóa hoặc giải mã.
2. Dán văn bản thuần túy hoặc thành phần URL được mã hóa phần trăm.
3. Sao chép kết quả cho URL tìm nạp hoặc thẻ phân tích.
4. Sử dụng EncodeURIComponent cho các giá trị truy vấn, không phải URL đầy đủ một cách mù quáng.
Ví dụ về mã hóa URL
Truy vấn tìm kiếm
"coffee & tea" khi truy vấn trở thành cà phê%20%26%20tea trong tham số ?q=.
Tên thành phố Unicode
München mã hóa thành M%C3%BCnchen bằng UTF-8 phần trăm mã hóa.
Giải mã thông số chuyển hướng
Đọc ?next=%2Fdashboard%3Ftab%3D1 để tìm hiểu đường dẫn mục tiêu chuyển hướng.
Khi nào nên mã hóa URL
• Khi xây dựng chuỗi truy vấn theo cách thủ công trong các thử nghiệm.
• Khi gỡ lỗi các liên kết bị hỏng bằng các ký tự đặc biệt.
• Khi giải mã các tham số UTM phân tích từ nhật ký.
Thông tin cơ bản về RFC 3986
Các ký tự dành riêng như ? # & có ý nghĩa trong URL — chỉ mã hóa các phần dữ liệu. Cấu trúc: diagram://host/path?query#fragment.
Câu hỏi thường gặp
encodeURI so với EncodeURIComponent?
encodeURI giữ :// và ? để có URL đầy đủ; EncodeURIComponent mã hóa mọi thứ cho các giá trị truy vấn — Sự phân biệt JS áp dụng theo khái niệm.
Plus so với %20?
Các chuỗi truy vấn thường coi + là khoảng trắng trong ứng dụng/x-www-form-urlencoded — biết ngữ cảnh.
Dấu gạch chéo trong thông số?
encodeURIComponent mã hóa / thành %2F — được yêu cầu bên trong một thông số value.
Local?
Có.
Miền IDN?
Các miền Unicode sử dụng punycode trong DNS — tách biệt với mã hóa đường dẫn.