1. 程式人生 > >tomcat新增跨域訪問功能-Access-Control-Allow-Origin:*

tomcat新增跨域訪問功能-Access-Control-Allow-Origin:*

目標:tomcat伺服器提供的介面,不能在其他域中訪問的時候,需要增 Access-Control-Allow-Origin:* 

直接配置的方法很多,但是我一個沒有成功過,所以只能自己寫攔截器了。

1. 編寫攔截器程式碼

  新建一個類,實現Filter介面,程式碼如下

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 package com.itxc.filter; import javax.servlet.*; import javax.servlet.http.HttpServletResponse;
import java.io.IOException; 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 {
HttpServletResponse httpResponse = (HttpServletResponse) servletResponse; httpResponse.addHeader("Access-Control-Allow-Origin""*"); filterChain.doFilter(servletRequest, servletResponse); } @Override public void destroy() { } }

2. 配置web.xml

1 2 3 4 5 6 7 8 9 <filter
> <filter-name>CorsFilter</filter-name> <filter-class>com.itxc.filter.CORSFilter</filter-class> </filter> <filter-mapping> <filter-name>CorsFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>

3. 刪除你之前為了這個功能配置的亂起八糟的配置吧