Apache HttpAsyncClient的可观察API

这是将Netflix开源Rxjava与Apache的Http异步客户端结合的开源库。

创建一个可观察的请求源:


ObservableHttp.createGet("http://www.wikipedia.com", httpClient).toObservable();
ObservableHttp.createRequest(HttpAsyncMethods.createGet(
"http://www.wikipedia.com"), httpClient).toObservable();

下面是一个完整的请求和分析响应的代码,从客户端向服务器发出一个请求,得到响应后,将响应的byte[]转为String数组。


ObservableHttp.createRequest(HttpAsyncMethods.createGet("http://www.wikipedia.com"), client)
.toObservable()
.flatMap({ ObservableHttpResponse response ->
return response.getContent().map({ byte[] bb ->
return new String(bb);
});
})
.toBlockingObservable()
.forEach({ String resp ->
// this will be invoked once with the response
println(resp);
});

项目源码见:
ReactiveX/RxApacheHttp · GitHub

。。。搞成可观察的有啥用。。。 ?

2015-09-18 19:22 "@lostalien"的内容
搞成可观察的有啥用 ...

搞成可观察的,就可以随时随地观察,如同你安排了一个间谍在某个组织,你可以随时了解这个组织的情况。

可观察的和Rective是有密切联系的。