2014-04-04 2 views
0

무엇과 같은 URL의 쿼리 부분을 hande하는 선호/추천 방법 :URL 쿼리 부분 조성과 분해

(?)attr=value&attr=value2&attr2=value 

Specificially Map<String,String> 및 쿼리 문자열 URL 인코딩 형식 사이의 변환. & 및 = 같은 특수 문자 인코딩을 처리하는 정상적인 구현이 있습니까? 어트랙터 이름에서 "="는 어떨까요? 관련 RFC가 있습니까?

답변

1

URI 템플릿을 사용할 수 있습니다.

This library 정확히 일치합니다. README에서 인용 된 예제 :

# Substitution of a map of query parameters 
http://foo.bar.com/some/request{?queryparams*} 

# "queryparams" associative array: 
hello -> world!, 
streetInGerman -> Straße 

# result of expansion: 
http://foo.bar.com/some/request?hello=world%21&streetInGerman=Stra%C3%9Fe 

관련 RFC는 RFC 3986 (URI) 및 RFC 6570 (URI 템플릿)입니다.


분해의 경우 조금 더 힘듭니다. URI 클래스를 사용하여 URI를 구문 분석 한 다음 쿼리 문자열을 가져올 수 있습니다. 그러나 당신은 여전히 ​​스스로 결과를 나눠야합니다.