浏览器跨域问题

来源:互联网 发布:lol支持mac系统吗 编辑:程序博客网 时间:2024/06/07 01:25

本地的工程写个ajax去请求已经放到云端的项目的json接口提示Access-Control-Allow-Origin,好像被请求的项目限制回复其他地址的请求才会这样,解决方案就是在被请求的项目中设置过滤器,告诉项目的Httpresponse  我相应任何地址过来的请求


过滤器代码

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 AcaoFilter implements Filter{@Overridepublic void init(FilterConfig filterConfig) throws ServletException {// TODO Auto-generated method stub}@Overridepublic void doFilter(ServletRequest request, ServletResponse response,FilterChain chain) throws IOException, ServletException {// TODO Auto-generated method stubHttpServletResponse resp = (HttpServletResponse) response;resp.setHeader("Access-Control-Allow-Origin", "*");resp.setHeader("Access-Control-Allow-Headers", "Authentication");chain.doFilter(request, resp);}@Overridepublic void destroy() {// TODO Auto-generated method stub}}
在web.xml 中配置上这个过滤器

<!-- 解决 ajax跨域  --><filter><filter-name>AcaoFilter</filter-name><filter-class>com.filter.AcaoFilter</filter-class></filter><filter-mapping><filter-name>AcaoFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping>





原创粉丝点击