我正在寻找一个使用管道字符分隔多个查询参数的 Spring 或 Apache 解决方案。我什至会使用一个库,它将一个数组或字符串集合简化为一个用管道字符分隔的单个字符串。
MultiValueMap<String, String> multiValueMap = new HttpHeaders();
multiValueMap.put("arg1", new List<String>(){{
add("foo");
add("bar");
}});
URIBuilder uriBuilder = URIBuilder.fromUri("foo.com");
uriBuilder.queryParams( queryArguments );
RestTemplate restTemplate = new RestTemplate();
String lazyResponse = restTemplate.getForObject(uriBuilder.build(), String.class )
否则我只能做一个轮子了。
public String makeHttpParameter(List<String> args, char seperator){
Iterator<String> iterator = args.iterator();
StringBuilder builder = new StringBuilder();
while( iterator.hasNext() ){
builder.append(iterator.next());
if(iterator.hasNext()){
builder.append(seperator);
}
}
return builder.toString();
}