Spring云Netflix文档没有关于现有Zuul过滤器的任何信息。是否还有其他资源可以解释现有的zuul过滤器,有关创建新过滤器的指南?另外我需要知道我应该在自定义过滤器中设置什么优先级以及是否需要在servlet过滤器中使用ResponseWappers?
答案 0 :(得分:3)
要创建自定义过滤器,您可以使用ZuulFilter扩展该类,并且必须添加@Bean配置。
public class MyFilter extends ZuulFilter {
@Override
public String filterType() {
return "pre";
}
@Override
public int filterOrder() {
return 1;
}
@Override
public boolean shouldFilter() {
return true;
}
@Override
public Object run() {
return null;
}
}
将此定义写在使用springbootapplication
注释的类上@Bean
public MyFilter myFilter() {
return new MyFilter();
}
有4种类型的过滤器PRE,ROUTING,POST,ERROR我认为名称解释了你可以在上面的FilterType()方法中定义过滤器类型的目的,也可以选择优先级。
您可以使用RequestContext来获取请求和响应。
这些文档可能有助于获取更多详细信息: -