Retrofit with an old school service

烈酒焚心 提交于 2019-12-30 04:06:09

问题


I'm using an external service like : http://domain.com/free/v1/servicename.ext?format=json&num_of_days=4

I try to use Retrofit like that :

@GET("/free/v1/servicename.ext?format=json&num_of_days={numOfDays}")
void serviceName(@Path("numOfDays") int numOfDays, Callback<Result> callback);

but an exception is thrown :

URL query string must not have replace block.

Is it compatible with this kind of url ?


回答1:


It absolutely is compatible with it!

You can't use @Path inside of the query parameters. That annotation is only for replacements inside the path.

The @Query parameter allows for creating dynamic query parameters.

@GET("/free/v1/servicename.ext?format=json")
void serviceName(@Query("num_of_days") int numOfDays, Callback<Result> callback);


来源:https://stackoverflow.com/questions/25658885/retrofit-with-an-old-school-service

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!