以下GET请求通过
@GET("api/v1/shades/colors?color=bl")
Call<List<Colors>> getColors();
但是以下GET请求失败。
@GET("api/v1/shades/colors?color={colorId}")
Call<List<Colors>> getColors(@Path(StringConstants.COLOR_ID) String colorId);
将动态值传递给GET请求的正确方法是什么?
谢谢!
使用注释@RequestParam
:
@GET("api/v1/shades/colors")
Call<List<Colors>> getColors(@RequestParam String colorId);
以下任何一项都应该起作用:
A。
@GET("api/v1/shades/colors")
Call<List<Colors>> getColors(@RequestParam("colorId") String colorId);
B。
@GET("api/v1/shades/colors/{colorId}")
Call<List<Colors>> getColors(@PathVariable("colorId") String colorId);
似乎您正在使用JaxRS Web应用程序。您应该使用此:
@GET("api/v1/shades/colors")
Call<List<Colors>> getColors(@QueryParam("color") String colorId);
[检查此:https://docs.oracle.com/javaee/6/tutorial/doc/gilik.html和此:https://mkyong.com/webservices/jax-rs/jax-rs-queryparam-example/。
希望有帮助!