package com.metro.configure;
import org.springframework.stereotype.Component;
import org.springframework.web.filter.OncePerRequestFilter;
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
/**
* CORS跨域处理配置
*/
@Component
@WebFilter(urlPatterns = {"/*"}, filterName = "ocrsFilter")
public class CORSFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest) servletRequest;
HttpServletResponse response = (HttpServletResponse) servletResponse;
response.addHeader("Access-Control-Allow-Origin", request.getHeader("Origin"));
response.addHeader("Access-Control-Allow-Methods", "*");
response.addHeader("Access-Control-Allow-Headers", "Content-Type");
//TODO 开启 cookie跨域
response.setHeader("Access-Control-Allow-Credentials", "true");
//TODO 有效期30分钟
response.addHeader("Access-Control-Max-Age", "1800");
//response.addHeader("Access-Control-Expose-Headers", "token");
//response.setHeader("token", "111111111111111");
filterChain.doFilter(request, response);
}
@Override
public void destroy() {
}
}
springboot中增加跨域过滤器
最新推荐文章于 2024-07-06 20:36:20 发布