我有一个情况,我需要进行网络服务电话。我有一个网址,需要将一些参数添加到此网址。这些参数具有需要发送的开始日期和结束日期。所以我用JSON解析它并创建一个URL。
需要网址: http://somelink.com/somemethod?param= { “startingAT”: “2013年4月23日”, “endingAT”: “2013年4月30日”}
当我使用WebResource执行此URL时,如: WebResource webResource = client.resource(url); ClientResponse response = webResource.accept(“application / json”)。get(ClientResponse.class); String output = response.getEntity(String.class);
我为参数创建了一个JSON字符串:{“startingAT”:“2013-04-23”,“endingAT”:“2013-04-30”}即与我需要的完全相同。< / p>
当我执行此URL时,我会收到非法的字符异常。请帮助!!!!
答案 0 :(得分:0)
您必须首先使用URLEncoder.encode()编码JSON字符串。
当然,更好的选择是使用URL编码而不是JSON,例如:
http://somelink.com/somemethod?start=2013-04-23&end=2013-04-30
如果/ somemethod处理程序支持它,甚至更好,通过POST请求发送它。