spring - 将 Spring WebSession 与 Spring React Web Flux 集成

标签 spring spring-boot spring-webflux

Spring 新的响应式(Reactive) Web Flux api 有一个新的 http session 实现,位于 here 。 我想将最新的 Spring Web session 集成到新的 Spring Reactive Web Flux 中。我似乎无法得到它,我尝试将它作为 bean 注入(inject),但它不起作用。我想像通常使用 HttpSession 那样注入(inject)它

类似的东西

@Autowired
Websession webSession;

最佳答案

因为 Spring WebFlux 是一个响应式(Reactive) Web 框架,所以您不能期望 Web Session 作为 bean 注入(inject)(即使在请求范围内)。在 Servlet 世界中,每个请求/响应都在单个线程中处理,这使得这些方法成为可能(即“请求”范围)。使用WebFlux,给定的请求可以由多个线程处理。

与当前请求/响应关联的 WebSession 实例实际上附加到 ServerWebExchange (请参阅 getSession )。由于响应式(Reactive)编程模型的性质,您很可能在 Reactor 运算符中访问该 session - 因此您不能期望将此实例注入(inject)到应用程序中的其他位置。

关于spring - 将 Spring WebSession 与 Spring React Web Flux 集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45856486/

相关文章:

java - Spring MVC 自定义格式化程序未触发

spring-boot - 如何使用 netty-reactor 从阻塞调度程序切换回以前的调度程序?

java - @Autowired 在 Spring 和 Vaadin 集成中不起作用

java - 在 Spring 中格式化/缩进 JaxB 编码器

java - Google APP Engine 和 cloud sql::无法在 Google cloud sql 中连接 Spring boot 应用程序(我的 sql)

java - 在 Spring JPA 中是否有更简洁的方式构建 MappedSuperclass Tree 类?

java - Angular 2/Spring Security CSRF 实现问题

java - 使用 ReactiveCouchbaseRepository 时出现 IllegalArgumentException 期望找到类 rxSingle 的响应式(Reactive)适配器,但无法找到

java - @EnableResourceServer 不适用于 spring-webflux

java.lang.IllegalArgumentException : No converter found for return value of type