Access-Control-Allow-Origin: *, * 前后端出现跨域问题,多*

当时情况是,同一个项目,前后端分离开发,出现跨域问题,最后跟进下来,是后台反回

Access-Control-Allow-Origin: *, *      多* 

Access-Control-Allow-Origin: *, * 前后端出现跨域问题

出现一颗   *   就通过后台过滤设置响应

/CORSFilter

public class CORSFilter implements Filter{   //里设置 

@Override

public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain)

throws IOException, ServletException {

HttpServletResponse httpResponse = (HttpServletResponse) servletResponse;

 httpResponse.setHeader("Access-Control-Allow-Methods", originHeader);  

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

        httpResponse.setHeader("Access-Control-Allow-Headers", "Content-Type,XFILENAME,XFILECATEGORY,XFILESIZE");

        httpResponse.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");

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

        httpResponse.setHeader("Access-Control-Allow-Headers", "Content-Type, Access-Control-Allow-Headers, Authorization, X-Requested-With");

 filterChain.doFilter(servletRequest, servletResponse);

}

@Override

public void init(FilterConfig arg0) throws ServletException {

}

}

web.xml

<!-- 解决跨域请求 -->

<filter>

<filter-name>tt</filter-name>

<filter-class>com.hbcw.finance.sys.utils.CORSFilter</filter-class>

</filter>

<filter-mapping>

<filter-name>tt</filter-name>

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

</filter-mapping>

当出现一颗   * ,* 或者多颗时,肯定是后台设置多了  

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

本人就是遇到多请求一次,在后面有,使用到addHeader("Access-Control-Allow-Origin", "*"); 造成。 网上也有说nginx也设置有,故需要多方去查找后台

更多推荐

Access-Control-Allow-Origin: *, * 前后端出现跨域问题,多*