如何在rxjava中连续地将数据流传输到客户端?

时间:2017-06-06 11:19:39

标签: java spring spring-boot rx-java observable

考虑一下我在服务器上有无限Stream java.util.stream.Stream )数据的情况,如下所示。

Stream.iterate(0,k-> k++);

我需要一种方法,这样我就可以拥有一个客户端,可以订阅这个流并使用rx.Observable读取它的内容。

我确实尝试从服务器端的Controller返回Observable,但是我得到以下异常java.lang.IllegalArgumentException: No converter found for return value of type : class rx.Observable

项目设置:

  1. 服务器和客户端是Spring Boot应用程序
  2. 使用jackson-databind
  3. 完成编组和解组

    具体问题:

    1. 我错过了什么? (要阅读的主题)
    2. 有没有办法使用任何其他api编组Observable
    3. P.S。
      我需要一个设置,客户端可以主动订阅和取消订阅服务器。
      由于我是 反应式编程 的新手,请随时提出修改建议以使问题更好。

1 个答案:

答案 0 :(得分:0)

我可以通过关注Spring Tips: the Spring Web Flux Reactive Client

来解决我的问题

因为 Spring 5 的新 WebFlux 组件尚未提供javadoc,因为它尚未最终确定(由M. Deinum提及,在他的评论),除非有人耐心地使用各种课程提供的不同方法,否则不可能找到合适的解决方案。

以下链接可用于进一步查看和参考:
WebFlux Framework- spring doc
Spring Tips: Functional Reactive Endpoints with Spring Framework 5.0

<强> P.S。
如果您找到更好的链接和教程,请随时编辑和更新答案。