分佈式04-Spring Cloud Zuul 二 Zuul攔截器

Spring Cloud 整合Zuul見上一篇ide

http://www.javashuo.com/article/p-yvfzynxu-kp.htmlpost

1.攔截器類型spa

/**
 * 「pre」 預過濾器 - 在路由分發一個請求以前調用。
 * 「route」 路由過濾器 - 用於路由請求時調用。
 * 「post」 後過濾器 - 在路由分發一個請求後調用。
 * 「error」 錯誤過濾器 - 在處理請求時發生錯誤時調用
 */

2.編寫攔截器.net

 

@Component
public class PreFilter extends ZuulFilter {
    @Override
    public String filterType() {
        return "pre";
    }

    @Override
    public int filterOrder() {
        return 0;
    }

    @Override
    public boolean shouldFilter() {
        return true;
    }

    @Override
    public Object run() throws ZuulException {
        RequestContext ctx = RequestContext.getCurrentContext();
        HttpServletRequest request = ctx.getRequest();

        System.out.println(
                "Pre Filter: Request Method : " + request.getMethod() + " " +
                        "Request URL : " + request.getRequestURL().toString());

        return null;
    }
}

咱們分別寫4個類型的攔截器,分部在控制檯打印出攔截器的順序。(代碼是同樣的,只是filterType return 的值不同,分別是攔截4個類型 )blog

能夠看到控制檯的打印順序 pre >route>error(只有異常的狀況纔會出現)>post路由

相關文章
相關標籤/搜索