URL mã hóa ký tự khoảng trắng: + hoặc% 20?

Sự nhầm lẫn này là do những URL vẫn bị ‘ hỏng ‘ cho đến ngày này .

Lấy ví dụ ” http://www.google.com “. Đây là một URL. URL là một Bộ xác định tài nguyên thống nhất và thực sự là một con trỏ tới một website ( trong hầu hết những trường hợp ). Các URL thực sự có cấu trúc được xác lập rất rõ kể từ thông số kỹ thuật kỹ thuật tiên phong vào năm 1994 .Chúng tôi hoàn toàn có thể trích xuất thông tin chi tiết cụ thể về URL ” http://www.google.com ” :

+---------------+-------------------+
|      Part     |      Data         |
+---------------+-------------------+
|  Scheme       | http              |
|  Host         | www.google.com    |
+---------------+-------------------+

Nếu chúng ta xem một URL phức tạp hơn, chẳng hạn như:

” https : / / bob : [email protected] : 8080 / tệp ; p = 1 ? q = 2 # thứ ba “chúng tôi hoàn toàn có thể trích xuất những thông tin sau :

+-------------------+---------------------+
|        Part       |       Data          |
+-------------------+---------------------+
|  Scheme           | https               |
|  User             | bob                 |
|  Password         | bobby               |
|  Host             | www.lunatech.com    |
|  Port             | 8080                |
|  Path             | /file;p=1           |
|  Path parameter   | p=1                 |
|  Query            | q=2                 |
|  Fragment         | third               |
+-------------------+---------------------+

https://bob:[email protected]:8080/file;p=1?q=2#third
\___/   \_/ \___/ \______________/ \__/\_______/ \_/ \___/
  |      |    |          |          |      | \_/  |    |
Scheme User Password    Host       Port  Path |   | Fragment
        \_____________________________/       | Query
                       |               Path parameter
                   Authority

Các nhân vật dành riêng là khác nhau cho mỗi phần .

Đối với URL HTTP, một khoảng trắng trong phần phân đoạn đường dẫn phải được mã hóa thành “% 20” (không, hoàn toàn không phải là “+”), trong khi ký tự “+” trong phần đoạn đường dẫn có thể không được mã hóa.

Bây giờ trong phần truy vấn, những khoảng chừng trắng hoàn toàn có thể được mã hóa thành ” + ” ( để thích hợp ngược : không cố tìm kiếm nó trong tiêu chuẩn URI ) hoặc ” % 20 ” trong khi ký tự ” + ” ( do sự mơ hồ này ) phải được thoát đến ” % 2B ” .Điều này có nghĩa là chuỗi ” blue + light blue ” phải được mã hóa khác nhau trong phần đường dẫn và truy vấn :” http://example.com/blue+light%20blue?blue%2Blight+blue ” .

Từ đó bạn có thể suy luận rằng việc mã hóa một URL được xây dựng đầy đủ là không thể nếu không có nhận thức cú pháp về cấu trúc URL.

Điều này sôi xuống :

Bạn nên có %20trước ?+sau.

Nguồn

Source: https://dvn.com.vn
Category: Cảm Nang

Alternate Text Gọi ngay