Java前端請求後臺跨域問題解決
阿新 • • 發佈:2019-02-13
當前端頁面與後臺執行在不同的伺服器時,就必定會出現跨域這一問題,本篇簡單介紹解決跨域的一種常用方案
1、錯誤如圖,前端請求後臺報錯
2、Java後臺新增Filter解決,程式碼如下
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 WebContentFilter implements Filter { @Override public void destroy() { } @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletResponse httpServletResponse=(HttpServletResponse) response; httpServletResponse.setHeader("Access-Control-Allow-Origin", "*"); httpServletResponse.setHeader("Access-Control-Allow-Headers", "Authentication"); chain.doFilter(request, httpServletResponse); } @Override public void init(FilterConfig arg0) throws ServletException { } }
3、web.xml新增配置項
web.xml配置: <!-- 跨域 --> <filter> <filter-name>ContentFilter</filter-name> <filter-class>com.xxx.xxx.WebContentFilter</filter-class> </filter> <filter-mapping> <filter-name>ContentFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>