我将使用URIBuilder构建URL,但是出现了一个问题:空格被替换成了+而不是%20。
这是我的代码:
我需要更改哪些参数才能正确编码?谢谢。
这是我的代码:
URI uri=null;
try {
uri = ub.setScheme("http")
.setHost("myalcoholist.com")
.setPath("/drink-management/view-drink-json")
.setParameter("flavor",(String)params[1])
.setParameter("brand",(String)params[2])
.setParameter("company",(String)params[3])
.build();
} catch (URISyntaxException e) {
Log.e("url", "could not parse url", e);
return null;
}
参数:
params[3] = {java.lang.String@831933398520}"contreau france."
params[2] = {java.lang.String@831933398384}"cointreau"
params[1] = {java.lang.String@831933398256}"orange"
结果URL:
"GET /drink-management/view-drink-json?flavor=orange&brand=cointreau&company=contreau+france. HTTP/1.1" 200 538 "-" "Apache-HttpClient/UNAVAILABLE (java 1.4)"
我需要更改哪些参数才能正确编码?谢谢。
+
作为空格的编码是无效的呢?(至少在HTTP协议中是有效的...) - Jon Skeet