为什么ServerHttpResponseDecorator :: writeWith返回类型仅是Mono <Void>而不是Flux <Void>

时间:2019-10-26 01:16:06

标签: java reactor spring-reactive

我正在扩展“ org.springframework.http.server.reactive.ServerHttpResponseDecorator”以捕获响应正文。 方法'writeWith'具有以下签名和返回类型

public Mono<Void> writeWith(Publisher<? extends DataBuffer> body)

我正在将'body'强制转换为(Mono),因为那是传递给方法的类型,然后对其进行“映射”以从其中读取dataBuffer。 我找不到答案的一个大问题是,将来是否可以将类型“ Flux”传递给该方法。在那种情况下,尽管我可以进行类型检查并将其强制转换为(Flux),然后执行通常的映射并读取缓冲区,但是方法'writeWith'的返回类型仍然是Mono。 那么我的方法在方法返回类型仍为Mono时将发布者转换为Flux是正确的吗?我不明白为什么在这种情况下没有单独的方法。 我还有一个问题是,如果传入的发布者是Flux,是否多次调用'writeWith'方法。

0 个答案:

没有答案