Java에서 HTTP URL 주소 인코딩
Java에서 java.net.URLEncoder 유틸리티는 일반적으로 HTML 양식 데이터를 인코딩하는 데 사용됩니다. 그러나 특정 문자 처리의 한계로 인해 HTTP URL 인코딩에는 적합하지 않을 수 있습니다.
HTTP URL을 올바르게 인코딩하는 한 가지 방법은 java.net.URI 클래스를 활용하는 것입니다. URL 문서에 따르면 "URI는 특정 상황에서 구성 요소 필드의 이스케이프를 수행합니다."
URI를 사용하여 HTTP URL을 인코딩하려면 다음과 같이 여러 인수가 있는 URI 객체를 생성하세요.
URI uri = new URI( "http", "search.barnesandnoble.com", "/booksearch/first book.pdf", null);
결과 URI에는 잘못된 문자가 이스케이프되어 예상되는 동작이 제공됩니다.
http://search.barnesandnoble.com/booksearch/first%20book.pdf
URI는 불법 문자만 이스케이프한다는 점에 유의하세요. ASCII가 아닌 문자의 경우 toASCIIString 메서드를 사용하여 URI를 US-ASCII 문자만 포함하는 문자열로 변환할 수 있습니다.
String request = uri.toASCIIString();
쿼리가 있는 URL의 경우 URI의 5개 매개변수 생성자를 사용하여 지정합니다. URL 경로와 쿼리 문자열 모두:
URI uri = new URI( "http", "www.google.com", "/ig/api", "weather=São Paulo", null);
이 접근 방식은 HTTP URL 인코딩을 위한 보다 강력하고 포괄적인 솔루션을 제공합니다. 자바.
위 내용은 Java에서 HTTP URL을 올바르게 인코딩하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!