SpringMVC 跨域请求
程序员文章站
2022-07-08 14:40:13
...
工作中,可能会开发 网站Api供客户访问,往往客户的入口与我们的Api不在同一个服务器上,这时候我们需要让http可以跨域请求。一种方式是让客户请求时,直接在header中添加允许跨域的属性,第二种方式就是我们在框架的过滤器中为header添加跨域属性,最新版的SpringMVC已经压缩成一个注解,直接使用。这里,我们贴一下旧版SpringMVC的跨域请求代码。
package com.img.utility;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServletResponse;
public class SimpleCORSFilter implements Filter{
@Override
public void destroy() {
}
@Override
public void doFilter(ServletRequest req, ServletResponse res,
FilterChain chain) throws IOException, ServletException {
HttpServletResponse response = (HttpServletResponse) res;
response.setHeader("Access-Control-Allow-Origin", "*");
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Headers", "x-requested-with");
chain.doFilter(req, res);
}
@Override
public void init(FilterConfig arg0) throws ServletException {
}
}