spring-mvc 解决跨域问题
解决跨域访问问题,只需在被访问的应用中加入一个请求过滤器:
1public class CorsFilter implements Filter {
2 @Override
3 public void doFilter(ServletRequest request, ServletResponse response,
4 FilterChain chain) throws IOException, ServletException {
5
6 HttpServletRequest req = (HttpServletRequest) request;
7 HttpServletResponse res = (HttpServletResponse) response;
8
9 if (req.getHeader("Origin") != null) {
10 res.addHeader("Access-Control-Allow-Origin", "*");
11 }
12
13 if ("OPTIONS".equals(req.getMethod())) {
14 res.addHeader("Access-Control-Allow-Methods", "OPTIONS, GET, POST");
15 res.addHeader("Access-Control-Allow-Headers","Origin, Content-Type");
16 res.addHeader("Access-Control-Max-Age", "-1");
17 }
18 chain.doFilter(req, res);
19 }
20
21 @Override
22 public void destroy() {
23 }
24
25 @Override
26 public void init(FilterConfig filterConfig) throws ServletException {
27 }
28}
