@Get("/ServiceTest?version=1&dateRange={dateRange}")
ResponseModel getDateRangeTest(String dateRange);
在RestClient接口中,这将进行以下获取
http://localhost:8080/ServiceTest/2014-01-29%25202014-01-29?version=1" resulted in 400 (Bad Request); invoking error handler
我在发送查询参数时做错了什么。
我想这样说:
/ServiceTest?version=1&dataRange=2014-01-29%25202014-01-29
在这种情况下,我无法使用Android注释生成@Get
回答:我的来电不正确,主要问题是uri编码,正确答案是
/ServiceTest?version=1&dataRange=2014-01-29%202014-01-29
答案 0 :(得分:1)
你可能做错了。
您的服务器获得/ServiceTest
但是您访问地址为/ServiceTest/2014-01-29%25202014-01-29
小心您的服务器收到 / ServiceTest?version = 1& dateRange = {dateRange} 和{dataRange}是您打算作为变量提供的。
您的地址应为/ServiceTest?version=1&dataRange=2014-01-29%25202014-01-29
==编辑==
我不熟悉Android Get annotation,但试试这个。
@Get("/ServiceTest?version=1&dateStart={dateStart}&dateEnd={dateEnd}")
ResponseModel getDateRangeTest(String dateStart, String dateEnd);
并使用/ServiceTest?version=1&dataStart=2014-01-29&dateEnd=2014-01-29
请注意,我更改参数更具体。这将是一个更好的方法。