enhancementhelp wanted
説明
Describe the bug Enabling WebClientHttpRoutingFilter & WebClientWriteResponseFilter leaves gateway client hanging. I can confirm that downstream HTTP calls works fine (200 OK with String Response), gateway logs also confirm 200 OK, but client is left hanging. Disabling WebClientHttpRoutingFilter & WebClientWriteResponseFilter beans (i.e., using default Netty routing & response handling) works just fine. We'd like to use a custom WebClient hence looking to get WebClientWriteResponseFilter working.
Appreciate any pointers. thanks
Sample
@Configuration
public class GatewayFilterConfig {
@Bean
public WebClient webClient() {
return WebClient.builder().build();
}
@Bean
public CustomWebClientRoutingFilter customWebClientRoutingFilter
(WebClient webClient, ObjectProvider<List<HttpHeadersFilter>> headersFilters) {
return new CustomWebClientRoutingFilter(webClient, headersFilters);
}
@Bean
public CustomWebClientResponseFilter customWebClientResponseFilter () {
return new CustomWebClientResponseFilter();
}
}
public class CustomWebClientRoutingFilter extends WebClientHttpRoutingFilter {
public CustomWebClientRoutingFilter(WebClient webClient, ObjectProvider<List<HttpHeadersFilter>> headersFiltersProvider) {
super(webClient, headersFiltersProvider);
}
@Override
public int getOrder() {
return Integer.MAX_VALUE - 1; //Run before the NettyRoutingFilter
}
}
public class CustomWebClientResponseFilter extends WebClientWriteResponseFilter {
@Override
public int getOrder() {
return Integer.MAX_VALUE;
}
}