Spring: WebClient で +
(プラス) をエンコード
ある時からSpringのプラスのエンコードの仕様が変わってしまった。
困ることが多いのでその対応策。
final ExchangeFilterFunction filter = (request, next) -> {
var encodedUrl = StringUtils.replace(request.url().toString(), "+", "%2B");
var filteredRequest = ClientRequest.from(request)
.url(URI.create(encodedUrl))
.build();
return next.exchange(filteredRequest);
};
var webClient = WebClient.builder()
.filter(filter)
.build();
ref: https://zenn.dev/zozotech/articles/5b388fef0d5920
#encode #plus