分布式04SpringCloudZuul二Zuul拦截器
https://my.oschina.net/u/4039389/blog/3221637
1.拦截器类型
/*** “pre” 预过滤器 - 在路由分发一个请求之前调用。
* “route” 路由过滤器 - 用于路由请求时调用。
* “post” 后过滤器 - 在路由分发一个请求后调用。
* “error” 错误过滤器 - 在处理请求时发生错误时调用
*/
2.编写拦截器
@Componentpublic 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个类型 )
可以看到控制台的打印顺序 pre >route>error(只有异常的情况才会出现)>post
以上是 分布式04SpringCloudZuul二Zuul拦截器 的全部内容, 来源链接: utcz.com/z/515225.html