首选/推荐的方式来处理以下网址的查询部分:
(?)attr=value&attr=value2&attr2=value
特别是Map<String,String>
和查询字符串url编码形式之间的转换。是否有任何理智的实现,负责编码像&amp; amp;和=? attr名称中的“=”怎么样?有没有相关的RFC?
答案 0 :(得分: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,然后获取查询字符串。但你仍然需要自己分割结果。