webfluxで@PostMapping
に来るリクエストのbodyを@RequestBody
で受けようとするとエラーになる。
https://github.com/spring-projects/spring-framework/issues/22284
この辺
HiddenHttpMethodFilter
でリクエストの中身を見ているのがダメっぽい。
POSTで他のHTTP Methodを再現できる機能があり、使っていないのであれば回避すれば問題は解決できる。
方法は自分で無効なHiddenHttpMethodFilterのBeanを登録する。
(リクエストのContent−Typeをtext/plain
とかにしても行けるが、こんな御事情のためにわざわざリクエストに手を加えて対応というのはかなり厳しい感じがする)
@Component
public class AvoidHiddenHttpMethodFilter extends HiddenHttpMethodFilter {
@Override
public Mono<Void> filter(ServerWebExchange exchange, WebFilterChain chain) {
// just do it
return chain.filter(exchange);
}
}