ServerWebExchange 属性为空

ServerWebExchange attributes are empty

我有 Spring 基于 WebFlux 构建的基于引导注释的控制器。我在 WebFilter 中实现了 WebFilter,我调用了 serverWebExchange.getAttributes(),它返回了 4 个属性,这很好。但在那之后它停止工作,现在它总是 returns 空属性映射。我没有更改控制器中的任何内容,但即使我这样做了,我仍然应该获得这些属性。为什么它停止工作?

它在我第一次这样做时起作用:

this.handlerMapping.getHandler(serverWebExchange)

其中 handlerMapping 是一个 RequestMappingHandlerMapping 类型的 bean,您可以从 WebFlux 注入它。

这行代码初始化 serverWebExchange 属性。有问题的是我写道它工作了一次然后就停止了。这样做的原因是我当时正在试验 handlerMapping 并且它使它起作用,然后我删除它并且属性停止被初始化。调试显示通常这些属性是在应用 WebFilter 之后设置的。这行代码让它初始化得更早。