美文网首页程序员
SpringBoot配置ZuulFilter过滤器详解

SpringBoot配置ZuulFilter过滤器详解

作者: 小吴不睡觉 | 来源:发表于2020-05-26 11:32 被阅读0次

    Zuul大部分功能都是通过过滤器来实现的,Zuul中定义了四种过滤器类型,这些过滤器类型对应的生命周期:

    PRE:这种过滤器在请求被路由调用之前调用。我们可利用这种过滤器实现身份验证、再集群中选择请求的微服务、记录调试信息等。

    ROUTING:这种过滤器将请求路由到微服务。用于构建发送给微服务的请求,并使用Apache HttpClient或Netflix Ribbon构建和发送原始HTTP请求的位置。

    POST:请求在路由到微服务之后执行。示例包括向响应添加标准HTTP标头、收集统计信息和指标、以及将响应从源传输到客户端。

    ERROR:过滤器在其中一个阶段发生错误时执行。

    image

    新建拦截器,继承ZuulFilter并重写默认方法

    public class TestFilter extends ZuulFilter {
    
        /**
         * 过滤器类型:pre、routing、post、error
         *
         * @return
         */
        @Override
        public String filterType() {
            return "pre";
        }
    
        /**
         * 通过int值来定义过滤器的执行顺序,数值越小优先级越高。
         *
         * @return
         */
        @Override
        public int filterOrder() {
            return 0;
        }
    
        /**
         * 通过boolean值判断该过滤器是否要执行,可以在此方法写入过滤逻辑,限定过滤器有效范围
         *
         * @return
         */
        @Override
        public boolean shouldFilter() {
            return false;
        }
    
        /**
         * 自定义过滤器逻辑
         *
         * @return
         */
        @Override
        public Object run() {
            return null;
        }
    }
    

    相关文章

      网友评论

        本文标题:SpringBoot配置ZuulFilter过滤器详解

        本文链接:https://www.haomeiwen.com/subject/qyumahtx.html