使用逗号分隔和多个参数创建Rest URL

时间:2018-05-29 10:30:47

标签: java rest http okhttp

我想为获取请求创建rest url,如

https://roads.googleapis.com/v1/nearestRoads?parameters=value1,value2|value3,value4 & key=YOUR_API_KEY

我正在使用okhttp客户端创建它,但我很困惑如何创建value1,value2 | value3,value4。

我无法找到为同一查询参数添加多个值的任何选项。 有没有可以使用的选项或我应该手动循环? 也是因为,和我应该使用编码值的特殊字符?例如:%2c,当手动创建时?

1 个答案:

答案 0 :(得分:1)

你应该做类似下面的事情。

HttpUrl.Builder urlBuilder = HttpUrl.parse("https://roads.googleapis.com/v1/nearestRoads").newBuilder();
urlBuilder.addQueryParameter("parameters", "value1,value2|value3,value4");
urlBuilder.addQueryParameter("key", "YOUR_API_KEY");
String url = urlBuilder.build().toString();
Request request = new Request.Builder().url(url).build();

你是否应该为value1,value2等进行循环或其他操作取决于你在应用程序中获取这些值的方式,因为问题不太明确,很难回答这部分。关于|至%2c,我认为你应该这样做。