我正在尝试使用Retrofit 2.0对移动后端进行API调用。在我的API调用中,我必须对此URL进行必要的调用
要在Retrofit中形成此URL,我一直在使用以下界面
@GET("Users?where=")
Call<List<User>> getFollowers(@Query("followings.objectId") String objectId);
此接口调用在查询参数之前放置一个&符号,并生成如下所示的URL
我尝试使用Path注释来解决这个问题,但我不断得到“URL查询字符串必须没有替换块。对于使用@Query的动态查询参数”错误。
我尝试连接的API需要“where =”子句进行设计过滤。我无权改变这一点。我想要的是以某种方式告诉Retrofit不要在查询参数之前放置一个&符号或此问题的任何变通方法。
感谢任何帮助。
答案 0 :(得分:0)
@GET( “{路径}”) 呼叫&GT; getFollowers(@Path(“path”)path,@ Query(“followings.objectId”)String objectId);
getFollowers(“Users?where =”,...)
答案 1 :(得分:0)
对于那些寻求类似答案的人,我提出了以下解决方案
我用@Url
声明了我的界面@GET
Call<List<User>> getFollowers(@Url String objectId);
并生成相关的URL部分作为扩展方法
public String toFollowerRequest(){
return RestGlobals.BASE_URL + "Users?where=followings.objectId=%27" + objectId + "%27";
}