springMVC自定義跨域過濾解決方法

一、自定義filter

public class ESTFilter implements Filter {

public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {

String hm = ((HttpServletRequest) req).getMethod();

HttpServletResponse response = (HttpServletResponse) res;

response.setHeader("Access-Control-Allow-Origin", "*");

Advertisements

response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTI ONS, DELETE");

response.setHeader("Access-Control-Max-Age", "3600");

response.addHeader("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");

chain.doFilter(req, res);

}

public void init(FilterConfig filterConfig) {

Advertisements

}

public void destroy() {

}

}

1、 *表示所有域名都可以訪問,如果想指定固定域名可以這樣配置http://eshengtai.net,http://www.eshengtai.net中間一定要用逗號分隔

二、配置web.xml Filter配置,解決跨域問題

<filter>

<filter-name>eshengtaiFilter</filter-name>

<filter-class>com.xx.ESTFilter </filter-class>

</filter>

<filter-mapping>

<filter-name>eshengtaiFilter</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

Advertisements

你可能會喜歡