因为Spring WebFlux是一个反应式Web框架,所以您不能期望Web会话作为Bean注入(即使在请求范围内)。在Servlet世界中,每个请求/响应都在单个线程中处理,从而启用了这些方法(即“请求”作用域)。使用WebFlux,一个给定的请求可以由多个线程处理。
WebSession
与当前请求/响应关联的实例实际上已附加到上ServerWebExchange
(请参见getSession)。由于反应式编程模型的性质,您很可能在Reactor运算符中访问该会话- 因此,您不能期望将此实例注入到应用程序中的其他位置。