从响应获取标头(Retrofit / OkHttp客户端)
我正在使用OkHttp客户端和Jackson的Retrofit进行Json序列化,并想获取响应的标头。
我知道我可以扩展OkClient并拦截它。但这是在反序列化过程开始之前进行的。
我基本上需要的是将标头与反序列化的Json Object一起使用。
回答:
在Retrofit 1.9.0中,如果您使用接口的回调异步版本,
@GET("/user")void getUser(Callback<User> callback)
然后您的回调将收到一个Response
对象
Callback<User> user = new Callback<User>() { @Override
public void success(User user, Response response) {
}
@Override
public void failure(RetrofitError error) {
}
}
其中有一个方法叫做 getHeaders()
Callback<User> user = new Callback<User>() { @Override
public void success(User user, Response response) {
List<Header> headerList = response.getHeaders();
for(Header header : headerList) {
Log.d(TAG, header.getName() + " " + header.getValue());
}
}
对于Retrofit 2.0的界面,您可以使用进行操作Call<T>
。
对于Retrofit 2.0的Rx支持,您可以使用
Observable<Result<T>>
以上是 从响应获取标头(Retrofit / OkHttp客户端) 的全部内容, 来源链接: utcz.com/qa/424523.html