问题
How can i access HTTP header fields like ETag from a response using Volley ?
With HttpUrlCoonection i just do conn.getHeaderField("ETag") and that's it.
Thanks
回答1:
You can subclass Request (or any of its subclasses) and override the parseNetworkResponse method:
@Override
protected Response<Bitmap> parseNetworkResponse(NetworkResponse response) {
Map<String, String> responseHeaders = response.headers;
}
回答2:
You can extend Request class. Then when you implement parseNetworkResponse(NetworkResponse response) method you can access header values in response.headers. So you can access ETag header like response.headers.get("ETag"). What I did was to then add this header value in response object like response.setETag(etag) and than I just return it in Response.success(response, null). Response object will then be delivered to deliverResponse(E response) where you can send it forward to some listener.
来源:https://stackoverflow.com/questions/20702178/android-volley-access-http-response-header-fields