通过具有多个输入的Java中的REST API发送GET请求

时间:2014-08-21 16:02:23

标签: java rest input parameters get

我需要使用带有多个输入参数的GET使用Java向现有REST服务发送请求。

如果我想要的计算的初始网址是:     https://api.restservice123.com/api/calculate

我想用以下参数制作一个calc对象:

calcObj e = new calcObj();

e.token="token_ABC123";
e.country="US";
e.amount = 100;
e.price = 24;
e.customer = "bob";

网址应如下所示:

https://api.restservice123.com/api/calculate?token=token_ABC123&country=US&amount=100&price=24&customer=bob

是否有任何框架将来自calc对象的参数组合在一起并将它们重新格式化为url appropirate格式并将它们与api url结合起来?

我最终在calc对象中创建了一个方法,该方法将所有非null参数放入字符串列表中,并使用google common中的Joiner和使用HttpURLConnection连接到url来组合它们。但是这种方法看起来很糟糕,因为我希望那里的东西可以更好地完成所有这些,但我无法找到它。

1 个答案:

答案 0 :(得分:0)

URIBuilder类适用于此。它有一个方法setParameters(java.util.List),它接受​​一个名称值对列表并从中构建一个URI。