@Slf4j
@ServletComponentScan
@WebFilter(urlPatterns = "/*",filterName = "requestContextFilter")
public class RequestContextFilter implements Filter {
/**
* 回收
*/
@Override
public void destroy() {
}
@Override
public void init(FilterConfig filterConfig) throws ServletException {
log.info("cloud request context filter inited");
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain chain)
throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest)servletRequest;
HttpServletResponse response = (HttpServletResponse) servletResponse;
RequestContext ctx = new RequestContext();
// 设置用户信息
ctx.setCustomerId(request.getHeader(GlobalConstant.CUSTOMERID));
ctx.setTelephone(request.getHeader(GlobalConstant.TELEPHONE));
response.setHeader("Access-Control-Allow-Origin", "*"); //解决跨域访问报错
response.setHeader("Access-Control-Allow-Methods", "POST, PUT, GET, OPTIONS, DELETE");
response.setHeader("Access-Control-Allow-Headers", "*");
ContextHolder.set(ctx);
chain.doFilter(servletRequest, servletResponse);
}
}
java Springboot跨域问题处理 拦截器 Header设置参数
最新推荐文章于 2022-11-27 16:29:29 发布