2011-11-03 16 views
14

Có phải %3B được xử lý khác với %3b trong URL không?Trường hợp mã hóa phần trăm URL có nhạy cảm không?

+1

Có. Bạn thậm chí đã thử google nó? http://www.google.no/search?gcx=w&sourceid=chrome&ie=UTF-8&q=url+encoding+case+sensitive Kết quả hàng đầu cung cấp cho bạn chính xác những gì bạn muốn? –

+0

Tôi đã tìm thấy một số thông tin xung đột. Tôi nghĩ đặt một câu hỏi sẽ là cách dễ nhất để xóa mọi thứ. – hugomg

+0

Ok. Tôi tin rằng thông tin trong liên kết nói rằng đó là từ RFC. Nhưng làm thế nào nó được thực hiện luôn luôn là một bí ẩn với các nhà sản xuất trình duyệt. ;) –

Trả lời

17

Không, mã hóa phần trăm URL KHÔNG phân biệt chữ hoa chữ thường. Theo số RFC 3986:

2.1. Phần trăm-Encoding

[...]

Các chữ số thập lục phân hoa 'A' qua 'F' tương đương với chữ số chữ thường 'a' qua 'f', tương ứng. Nếu hai URI khác nhau chỉ trong trường hợp chữ số thập lục phân được sử dụng trong octet được mã hóa phần trăm, chúng tương đương nhau.

+0

Có thể thích hợp để đề cập rằng trong trường hợp URI được sử dụng cho khai báo không gian tên trong XML (cũng XHTML, SOAP, v.v.), mã hóa phần trăm không có hiệu lực (nó không được giải mã) và chỉ là một phần của chuỗi tạo nên không gian tên. Kết quả là, nó * là * phân biệt chữ hoa chữ thường. I E. 'xmlns: t =" http://foo.bar/%2A "' là * không bằng nhau, cũng không tương đương * đối với 'xmlns: t =" http://foo.bar/%2a "'. – Abel

+0

@Abel trong khi thực sự, đó là thực sự xuống đến không gian tên XML không thực sự là URI (mặc dù đặc điểm kỹ thuật của họ sai tuyên bố khác). Ví dụ, một phần của không gian tên mà purports là một thành phần miền cũng phân biệt chữ hoa chữ thường trong các khai báo không gian tên XML, vi phạm RFC 3986. –

+0

chính xác, đó là điểm ở đây, cảm ơn vì đã cung cấp thêm ngữ cảnh – Abel

Các vấn đề liên quan