zuul 网关 filter

 

给网关做一个拦截

 

import com.netflix.zuul.ZuulFilter;
import com.netflix.zuul.context.RequestContext;
import org.springframework.cloud.netflix.zuul.filters.support.FilterConstants;
import org.springframework.stereotype.Component;
import javax.servlet.http.HttpServletRequest;
/**
* 请求拦截
*
* @author H
* @version $id:LoginFilter.java, v 1.0 2022/4/4 15:51:37 $
*/
@Component
public class RequestFilter extends ZuulFilter {
@Override
public String filterType() {
return FilterConstants.PRE_TYPE;
}
@Override
public int filterOrder() {
return 0;
}
@Override
public boolean shouldFilter() {
return true;
}
@Override
public Object run() {
System.out.println("进入zuul拦截-login拦截");
//获取上下文
RequestContext ctx = RequestContext.getCurrentContext();
//获取Request
HttpServletRequest request = ctx.getRequest();
//获取请求参数
String token = request.getHeader("head_userName");
System.out.println("参数token=" + token);
return null;
}
}

 

FilterConstants 拦截的类型有几种

String ERROR_TYPE = "error";
String POST_TYPE = "post";
String PRE_TYPE = "pre";
String ROUTE_TYPE = "route";

 

pre: 在进入请求之前进入这个filter

post: 请求完成之后再进入这个filter

 

posted @   aaacarrot  阅读(37)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示