响应

Response是Kalle的核心类,在InterceptorRequest都提到过它的用法,通过Response可以获取到服务器响应时的codeheadersbody(参考ResponseBody)。

一般情况下,开发者不会经常使用Response类,但是在拦截器中可能会使用到,比如拦截器中登录的Token/Cookie失效时后自动重新登录的例子。如果开发者想基于Kalle自行封装异步请求和下载请求,就可能会使用到Response类。

Response的Api如下:

public final class Response implements Closeable {

    /**
     * Get the mCode of response.
     */
    public int code();

    /**
     * Get http headers.
     */
    public Headers headers();

    /**
     * Get http body.
     */
    public ResponseBody body();

    /**
     * It is a redirect response code.
     */
    public boolean isRedirect();

Response的基础方法有如下三个:

  • code()方法是获取服务器响应码。
  • headers()方法是获取服务器响应头。
  • body()是获取服务器的响应包体,参考ResponseBody

Response的扩展方法有两个:

  • close()是关闭当前包体的流,断开本次请求和服务器建立的连接。
  • isRedirect()是判断当前响应是否需要重定向。

值得注意的是close()方法是实现了Closeable接口而得来的,不是由Response直接提供。

results matching ""

    No results matching ""