- 实现类
package com.quickmap.common.filter; import org.springframework.web.filter.OncePerRequestFilter; import javax.servlet.FilterChain; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; /** * Created by matt0614@qq.com on 2017/12/5 0005. */ public class MyOncePerRequestFilter extends OncePerRequestFilter { @Override protected void doFilterInternal(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, FilterChain filterChain) throws ServletException, IOException { httpServletResponse.setHeader("Access-Control-Allow-Origin", "*"); httpServletResponse.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE"); httpServletResponse.setHeader("Access-Control-Max-Age", "3600"); httpServletResponse.setHeader("Access-Control-Allow-Headers", "x-requested-with,Authorization"); httpServletResponse.setHeader("Access-Control-Allow-Credentials", "true"); System.out.println("host = " + httpServletRequest.getRemoteHost()); filterChain.doFilter(httpServletRequest, httpServletResponse); } }
-
过滤器注册
<!-- CORS过滤器 start --> <filter> <filter-name>cors</filter-name> <filter-class>com.quickmap.common.filter.MyOncePerRequestFilter</filter-class> </filter> <filter-mapping> <filter-name>cors</filter-name> <url-pattern>/rest/*</url-pattern> </filter-mapping> <!-- CORS过滤器 end -->