用OHttp3拦截和覆盖体

时间:2016-09-29 19:32:39

标签: android okhttp3

我拦截了一个请求而我覆盖了身体响应,这有效,但我遇到ResponseBody.create的问题,最后的正文

  

[文本= { “field1的”: “VALUE1”}“}]

我需要身体:

  

{ “field1的”: “VALUE1”}“}

我不明白为什么我的身体在开始时有“ [test = ”。

这是我的拦截器(contentType是“ application / json; charset = UTF-8 ”):

public class MockInterceptor implements Interceptor {

    @Override
    public Response intercept(Chain chain) throws IOException {
        //I want to intercept the url "/user/locations"
        final Request request = chain.request();
        final Response response = chain.proceed(request);

        if (response.request().toString().indexOf("/user/locations") > 0) {
            final Response newResponse = new Response.Builder()
                    .body(ResponseBody.create(response.body().contentType(), "{\"field1\":\"value1\"}"))
                    .code(200)
                    .protocol(Protocol.HTTP_1_1)
                    .request(response.request())
                    .message("Intercepted!")
                    .build();

            return newResponse;
        } else {
            return response;
        }
     }

任何想法?。

感谢。

0 个答案:

没有答案