Tất cả công cụ

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). Mã hóa chuỗi trước khi xây dựng thông số truy vấn; giải mã các liên kết được sao chép lộn xộn để đọc các giá trị — cần thiết cho việc gỡ lỗi dành cho nhà phát triển web.
Đầu vào
Đầu ra
Hello%20world

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ý.

Các lỗi thường gặp

Không mã hóa toàn bộ URL bao gồm giao thức — mã hóa các thành phần riêng biệt.
Không mã hóa kép — %2520 có nghĩa là được mã hóa hai lần.
Khi đường dẫn đã được mã hóa trong bộ định tuyến — chỉ giải mã một lần.

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.

URI chuyển hướng OAuth

Vấn đề mã hóa chính xác — thông tin đăng nhập bị ngắt không khớp. Sao chép từng byte chuyển hướng đã đăng ký.

Phân tích nhật ký

Giải mã cẩn thận các thông số tác nhân người dùng và người giới thiệu — mã hóa bị hỏng sẽ gây ra phân bổ sai trong trang tổng quan.

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.

Các thực thể HTML?

Mã hóa URL khác với & Thoát HTML — sử dụng htmlEncodeDecode để đánh dấu.