Spring webflux 如何在SpringWebClient中获取最后一个重定向URL

Spring webflux 如何在SpringWebClient中获取最后一个重定向URL,spring-webflux,reactor-netty,spring-webclient,Spring Webflux,Reactor Netty,Spring Webclient,可以按如下方式创建遵循重定向的客户端: WebClient.builder() .clientConnector(new ReactorClientHttpConnector( HttpClient.create().followRedirect(true) )) 在URL上调用HEAD请求后,如何检索最终位置标头?换句话说,我们如何将最终URL重定向到?HttpClientfoll

可以按如下方式创建遵循重定向的客户端:

WebClient.builder()
                .clientConnector(new ReactorClientHttpConnector(
                        HttpClient.create().followRedirect(true)
                ))
在URL上调用HEAD请求后,如何检索最终位置标头?换句话说,我们如何将最终URL重定向到?

HttpClientfollowRedirecttrue确实启用了重定向。 但是也有HttpClientfollowRedirectBiPredicate,在这里您可以更精确地控制何时要重定向,除此之外,您始终可以访问响应和位置标头,因此在任何时候您都可以知道将重定向到哪个位置。 更多信息和

比如说

        WebClient.builder()
                .clientConnector(new ReactorClientHttpConnector(
                        HttpClient.create().followRedirect((req, res) -> {
                            System.out.println(res.responseHeaders().get("Location"));
                            return HttpResponseStatus.FOUND.equals(res.status());
                        })
                ))

我遇到了这个特定的方法,但不确定谓词是在每次HTTP重定向之后被调用,还是在第一次HTTP调用之后被调用,然后在重定向链的其余部分处于自动驾驶状态