0

我在这里遇到一种情况,我需要拨打网络服务电话。我有一个 url,需要在这个 url 中添加一些参数。这些参数具有需要发送的开始日期和结束日期。所以我用 JSON 解析它并创建一个 url。

所需网址: http ://somelink.com/somemethod?param= {"startingAT":"2013-04-23","endingAT":"2013-04-30"}

当我使用 WebResource 执行此 url 时,例如: WebResource webResource = client.resource(url); ClientResponse response = webResource.accept("application/json") .get(ClientResponse.class); 字符串输出 = response.getEntity(String.class);

我为参数创建了一个 JSON 字符串: {"startingAT":"2013-04-23","endingAT":"2013-04-30"} 即与我需要的完全相同。

当我执行这个 url 时,我得到一个非法字符异常。请帮忙!!!!

4

1 回答 1

0

您必须首先使用 URLEncoder.encode() 对 JSON 字符串进行编码。

当然,更好的选择是使用 URL 编码而不是 JSON,例如:

http://somelink.com/somemethod?start=2013-04-23&end=2013-04-30

或者如果 /somemethod 处理程序支持它,甚至更好,通过 POST 请求发送它。

于 2013-09-05T06:56:13.143 回答