从邮递员或浏览器点击时,所有 Http 请求在 zuul 预过滤器中点击两次
All Http Request is hitting two times in zuul pre-filter when hitting from postman or browser
当从邮递员或任何浏览器点击并执行所有操作两次时,所有 Http 请求在 zuul 预过滤器中点击两次。我搜索了这个但找不到答案。
我无法在此处添加我的实际实现,因此添加了伪代码。
我的前置过滤器 class 是:
public class ApplicationGateway extends ZuulFilter {
@Override
public String filterType() {
return "pre";
}
@Override
public int filterOrder() {
return 1;
}
@Override
public boolean shouldFilter() {
return true;
}
@Override
public Object run()
{
LOGGER.debug("PRINT");
// PRINT is printing two times in each request
}
}
我的主要 class 是:
@SpringBootApplication
@EnableZuulProxy
public class
Application
extends
SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Bean
public ApplicationGateway preFilter() {
return new ApplicationGateway();
}
@Bean
public PostFilter postFilter() {
return new PostFilter();
}
@Bean
public ErrorFilter errorFilter() {
return new ErrorFilter();
}
@Bean
public RouteFilter routeFilter() {
return new RouteFilter();
}
@Bean
public ApplicationGateway getAuthenticatedFilter () {
return new ApplicationGateway();
}
}
为什么要从 getAuthenticatedFilter 返回 AplicationGateway 类型的 bean,删除它,它应该可以工作
当从邮递员或任何浏览器点击并执行所有操作两次时,所有 Http 请求在 zuul 预过滤器中点击两次。我搜索了这个但找不到答案。
我无法在此处添加我的实际实现,因此添加了伪代码。 我的前置过滤器 class 是:
public class ApplicationGateway extends ZuulFilter {
@Override
public String filterType() {
return "pre";
}
@Override
public int filterOrder() {
return 1;
}
@Override
public boolean shouldFilter() {
return true;
}
@Override
public Object run()
{
LOGGER.debug("PRINT");
// PRINT is printing two times in each request
}
}
我的主要 class 是:
@SpringBootApplication
@EnableZuulProxy
public class
Application
extends
SpringBootServletInitializer {
@Override
protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
return application.sources(Application.class);
}
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Bean
public ApplicationGateway preFilter() {
return new ApplicationGateway();
}
@Bean
public PostFilter postFilter() {
return new PostFilter();
}
@Bean
public ErrorFilter errorFilter() {
return new ErrorFilter();
}
@Bean
public RouteFilter routeFilter() {
return new RouteFilter();
}
@Bean
public ApplicationGateway getAuthenticatedFilter () {
return new ApplicationGateway();
}
}
为什么要从 getAuthenticatedFilter 返回 AplicationGateway 类型的 bean,删除它,它应该可以工作