Tôi đã có đối tượng URL có đường dẫn chứa unwise characters (RFC 2396) trong trường hợp của tôi là "|" (ống) nhân vật. Bây giờ tôi cần phải chuyển đổi một cách an toàn thành URI, nhưng URL.toURI()
sẽ ném một ngoại lệ.Làm thế nào để chuyển đổi URL toURI khi có các ký tự không chính xác?
Tôi đã đọc URL documentation nhưng phần này là dành cho tôi bối rối:
Lớp URL không tự mã hóa hoặc giải mã bất kỳ thành phần URL theo cơ chế thoát được định nghĩa trong RFC2396. Đó là trách nhiệm của người gọi để mã hóa bất kỳ trường nào, cần phải được thoát trước khi URL gọi và cũng có thể giải mã mọi trường đã thoát, được trả về từ URL. Hơn nữa, vì URL không có kiến thức về thoát URL, nó không nhận ra sự tương đương giữa mã hoá hoặc được giải mã của cùng một URL.
Vậy tôi nên làm như thế nào? Mô hình ở đây để mã hóa các ký tự này trong quá trình chuyển đổi là gì? Tôi có cần tạo bản sao được mã hóa của đối tượng URL của mình không?
Phương pháp này làm thay đổi URL như nó url mã hóa phần của URL, xem giải pháp của tôi –
có bạn là đúng, Tôi đã nhận thấy rằng một số thời gian cái tôi, trong ideone.com (xem liên kết đầu tiên) Tôi đã sửa chữa giải pháp của tôi và tôi đã thêm các trường hợp thử nghiệm thêm mà tiết lộ vấn đề này. Tôi sẽ kiểm tra giải pháp của bạn, có vẻ tốt hơn. –
Bằng cách các lỗi bạn gửi trên jmeter đã được cố định ngày hôm qua, bạn có thể thử hàng đêm xây dựng –