首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >改造GET查询将equalTo (=)转换为\u003d

改造GET查询将equalTo (=)转换为\u003d
EN

Stack Overflow用户
提问于 2018-04-12 10:41:55
回答 3查看 417关注 0票数 0

我有一个GET api

http://xxxxx/Status?taxYear=2017

响应= "IsValid":true

但是Retrofit查询正在将URL转换为

http://xxxxx/Status?taxYear\u003d2017

响应= "IsValid":false

这会产生错误的API响应。我试过Querymap了,帮我一下。

EN

回答 3

Stack Overflow用户

发布于 2018-04-12 10:54:01

不要在Retrofit端点中使用查询。你必须像这样使用查询注释..。

代码语言:javascript
复制
methodName(@Query(encoded = true, value = "taxYear") String filter)

可能“编码”参数可以是false或删除(false是默认值)。

票数 0
EN

Stack Overflow用户

发布于 2018-04-12 11:57:41

还可以在URL中指定查询参数。

代码语言:javascript
复制
@GET("xxxxx/Status?taxYear=2017") 
Call<ResponseBody> methodName();

或者其他方式是:

代码语言:javascript
复制
@GET("xxxxx/Status?taxYear={year}")
Call<ResponseBody> methodName(@Path("year") String year);
票数 0
EN

Stack Overflow用户

发布于 2018-04-12 12:19:02

定义基本URL,如

代码语言:javascript
复制
private static final String BASE_URL = "http://xxxxx/";

如果您定义了一个调用请求的接口,请尝试以下操作

代码语言:javascript
复制
@GET("Status")
Call<YourModelClass> yourRequestMethodName(@Query("taxYear") String yourYear);

调用上面定义的方法,如

代码语言:javascript
复制
Call<YourModelClass> call = yourRetrofitClientName.yourRequestMethodName("2017");
        call.enqueue(new Callback<YourModelClass>() {
            @Override
            public void onResponse(Call<YourModelClass> call, Response<YourModelClass> response) {

                //Handle your response here
            }

            @Override
            public void onFailure(Call<YourModelClass> call, Throwable t) {
               //Handle your error here
            }
        });
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49794462

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档