问题描述
有没有办法拦截AsyncHttpClient发出的请求,并根据请求数据做一些操作。
我想做这样的事情:
interceptor = new Interceptor(){
process(request){
//do something
}
}
client.addInterceptor(interceptor);
这样的事情可能吗?
解决方法
我使用“过滤器”做到了。
AsyncHttpClientConfig.Builder configBuilder = new AsyncHttpClientConfig.Builder();
configBuilder.addResponseFilter(new ResponseFilter() {
public FilterContext filter(FilterContext ctx) throws FilterException {
//do something
}
}
});
AsyncHttpClient c = new AsyncHttpClient(configBuilder.build());
同样可以添加请求过滤器
configbuilder.addRequestFilter(RequestFilterImpl);