我正在寻找一种在 Spring webflux netty 服务器中查找传入请求的 HTTP 版本的方法
我在
ServerWebExchange
中找不到任何方法来获取此信息。
Spring servlet 有一些实现来获取它,如 springboot servlet 中给出的那样。
有可能在 webflux 实现中得到它吗?
这真的很糟糕,但这很有效:
final var protocol = ((ReactorServerHttpRequest) exchange.getRequest()).request.protocol();
ReactorServerHttpRequest 默认情况下不会出现在你的类路径上。它由 Netty 在运行时提供。我同意这是 WebFlux 规范中的一个漏洞。