我的理解是Mono<List<T>>
是一个同步的Flux<T>
Flux 不能作为 REST API 响应。
我对吗?
如果不是的话,有什么区别Mono<List<T>>
and Flux<T>
或者 Flux 可能是某个地方的 REST API 响应?
- 作为返回类型,
Mono<List<T>>
意味着您将异步获得完整列表T
一次拍摄的元素。
-
Flux<T>
意味着你会得到零到很多T
元素,可能是一一出现的。
如果您从 HTTP 客户端获取此类返回类型,例如WebClient
, Mono<List<T>>
and Flux<T>
从运行时的角度来看,如果返回的Content-Type
例如"application/json"
。在这种情况下,解码器将一次性反序列化响应。唯一不同的是,Flux<T>
提供更多有趣的运算符,您可以随时collectList
并回落到Mono<List>
.
另一方面,如果返回Content-Type
是一个流媒体,例如"application/stream+json"
那么这肯定会产生影响,因为您将一一获得元素。事实上,如果返回的流是无限的,选择Flux<T>
非常重要,因为另一个永远不会完成。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)