【问题标题】:Android Volley access http response header fieldsAndroid Volley 访问 http 响应头字段
【发布时间】:2013-12-20 11:02:55
【问题描述】:

如何使用 Volley 从响应中访问 HTTP 标头字段,例如 ETag? 使用HttpUrlCoonection,我只需使用conn.getHeaderField("ETag") 即可。

谢谢

【问题讨论】:

    标签: java android http android-volley


    【解决方案1】:

    您可以继承 Request(或其任何子类)并覆盖 parseNetworkResponse 方法:

    @Override
    protected Response<Bitmap> parseNetworkResponse(NetworkResponse response) {
        Map<String, String> responseHeaders = response.headers;
    }
    

    【讨论】:

    • 你是对的。但是 volley 增加了一些额外的标头 kay-values。是否有仅获取服务器标头的过滤器?
    【解决方案2】:

    您可以扩展Request 类。然后,当您实现parseNetworkResponse(NetworkResponse response) 方法时,您可以访问response.headers 中的标头值。所以你可以访问像response.headers.get("ETag")这样的ETag头。我所做的是然后将此标头值添加到响应对象中,例如response.setETag(etag),然后我只是在Response.success(response, null) 中返回它。然后响应对象将被传递到deliverResponse(E response),您可以将其转发给某个侦听器。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-12-02
      • 2017-06-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多