Chuyển tên tệp tới trình duyệt firefox khiến nó thay thế dấu cách bằng %2520
thay vì %20
.Không gian html hiển thị dưới dạng% 2520 thay vì% 20
Tôi có HTML sau đây trong một tập tin gọi là myhtml.html
:
<img src="C:\Documents and Settings\screenshots\Image01.png"/>
Khi tôi tải myhtml.html
vào firefox, hình ảnh xuất hiện như một hình ảnh bị hỏng. Vì vậy, tôi nhấp chuột phải vào liên kết để xem hình ảnh và nó hiển thị URL được sửa đổi này:
file:///c:/Documents%2520and%2520Settings/screenshots/Image01.png
^
^-----Firefox changed my space to %2520.
Cái quái gì? Nó chuyển đổi không gian của tôi thành %2520
. Không nên chuyển đổi nó thành %20
?
Làm cách nào để thay đổi tệp HTML này để trình duyệt có thể tìm thấy hình ảnh của tôi? Những gì đang xảy ra ở đây?
Hexblot thực sự là chính xác ở đây. Thông thường điều này xảy ra khi bạn url lại mã hóa các url của bạn bằng cách lập trình và bot đến và mã hóa nó lần thứ hai. Bots có thói quen xấu khi làm điều này. Có hai là bạn có thể xử lý vấn đề này. 1) Bạn có thể 404 hoặc 401 với ngoại lệ bắt thử hoặc bạn có thể viết một hàm nhỏ sẽ giải mã các giá trị được giải mã đôi trước khi bạn chuyển nó sang phương thức khác cho logic nghiệp vụ. –
Điều này đã giúp tôi tìm ra lý do tại sao tôi nhận được nó khi gửi yêu cầu ajax jQuery. Tôi đã thiết lập thuộc tính data trong một yêu cầu GET ajax với hàm encodeURIComponent trên giá trị, nhưng jQuery đã làm nó theo mặc định, do đó tôi đã nhận được% 2520. Cảm ơn rất hữu ích. – Asher
Không có đối số dòng lệnh cho chrome để thông báo hoặc giải thích hoặc không giải thích liên kết? –