zoukankan      html  css  js  c++  java
  • Zuul核心-预定义Filter

    1、核心Prefilter

    ServletDetectionFilter源码如下,还是比较简单的

    public class ServletDetectionFilter extends ZuulFilter {
        public ServletDetectionFilter() {
        }
    
        public String filterType() {
            return "pre";
        }
    
        public int filterOrder() {
            return -3;
        }
    
        public boolean shouldFilter() {
            return true;
        }
    
        public Object run() {
            RequestContext ctx = RequestContext.getCurrentContext();
            HttpServletRequest request = ctx.getRequest();
            if (!(request instanceof HttpServletRequestWrapper) && this.isDispatcherServletRequest(request)) {
                ctx.set("isDispatcherServletRequest", true);
            } else {
                ctx.set("isDispatcherServletRequest", false);
            }
    
            return null;
        }
    
        private boolean isDispatcherServletRequest(HttpServletRequest request) {
            return request.getAttribute(DispatcherServlet.WEB_APPLICATION_CONTEXT_ATTRIBUTE) != null;
        }
    }
    

      

    2、核心RoutingFilter

    3、 核心PostFilter 

     

  • 相关阅读:
    Python中的赋值(复制)、浅拷贝与深拷贝
    review
    Python网络编程
    云计算网络 ASW DSW CSW LSW
    Python文件操作 I/O
    RSI 指标
    python 常见模块
    Python模块和包
    读利弗莫尔
    GDP、CPI、M2
  • 原文地址:https://www.cnblogs.com/linlf03/p/12548059.html
Copyright © 2011-2022 走看看