Spring WebFlux 中, request.queryParams 只能获取到 查询参数, 对于 form 提交的参数无法进行参数自动装载
处理方式有两种:
一. 自定义 ArgumentResolver, 具体如下:
实现接口 org.springframework.web.reactive.config.WebFluxConfigurer
重载 configureArgumentResolvers, 自定义 ArgumentResolver
从 ServerWebExchange.formData中查找参数值返回
@Configuration
class WebConfig : WebFluxConfigurer {
@Autowired
private lateinit var applicationContext: ConfigurableApplicationContext
override fun configureArgumentResolvers(configurer: ArgumentResolverConfigurer) {
class RequestFormDataMethodArgumentResolver(
beanFactory: ConfigurableBeanFactory,
registry: ReactiveAdapterRegistry,
useDefaultResolution: Boolean
): RequestParamMethodArgumentResolver(beanFactory, registry, useDefaultResolution) {
override fun resolveNamedValue(name: String, parameter: MethodParameter,