,
là một nhân vật dành riêng. Các ký tự dành riêng không bao giờ tương đương (cho mục đích chuẩn hóa) với các biến thể được mã hóa phần trăm của chúng. Vì vậy, các URI này không tương đương :
http://example.com/?foo,bar
http://example.com/?foo%2Cbar
Cả thông số URI tiêu chuẩn ¹ cũng không phải thông số kỹ thuật URI HTTP / HTTPS đều xác định vai trò đặc biệt ,
trong thành phần truy vấn. Điều này có nghĩa là các tác giả có thể sử dụng ,
để thể hiện dữ liệu trong thành phần truy vấn (nghĩa là cho bất cứ điều gì họ muốn).
Có thể có ý nghĩa khi sử dụng ,
cùng với %2C
trong thành phần truy vấn của URI. Ví dụ: một tác giả có thể quyết định sử dụng ,
để phân tách các cặp giá trị tên và %2C
để biểu thị dấu phẩy trong các giá trị:
http://example.com/?score:1%2C4,time:55
(Tuy nhiên, dường như không có ý nghĩa gì trong URI ví dụ trong câu hỏi của bạn. Giả sử rằng các giá trị là "xanh dương" và "xanh lục", cũng như "xl" và "xxl", điều đó sẽ có ý nghĩa hơn đối với một trong hai sử dụng ,
hoặc %2C
trong cả hai trường hợp. URI ví dụ của bạn sẽ có ý nghĩa nếu ví dụ: trường hợp sau thực sự là một giá trị, vì vậy "xl, xxl".)
Lưu ý rằng RFC 2396 đã lỗi thời. Tiêu chuẩn URI của IETF phải luôn có thể truy cập được theo STD 66 , hiện là RFC 3986 .
Tôi đã đưa ra một câu trả lời tương tự cho câu hỏi Hiệu ứng phụ có thể sử dụng dấu phẩy trong chuỗi truy vấn? trên Stack Overflow.