Cross-Origin Resource Sharing with Spring Security

后端 未结 8 1571
暖寄归人
暖寄归人 2020-12-01 04:39

I\'m trying to make CORS play nicely with Spring Security but it\'s not complying. I made the changes described in this article and changing this line in applicationCo

8条回答
  •  一向
    一向 (楼主)
    2020-12-01 05:10

    In my case, response.getWriter().flush() was't working

    Changed the code as below and it started working

    public void doFilter(ServletRequest request, ServletResponse res, FilterChain chain)
            throws IOException, ServletException {
    
        LOGGER.info("Start API::CORSFilter");
        HttpServletRequest oRequest = (HttpServletRequest) request;
        HttpServletResponse response = (HttpServletResponse) res;
        response.setHeader("Access-Control-Allow-Origin", "*");
        response.setHeader("Access-Control-Allow-Methods", "POST,PUT, GET, OPTIONS, DELETE");
        response.setHeader("Access-Control-Max-Age", "3600");
        response.setHeader("Access-Control-Allow-Headers",
                " Origin, X-Requested-With, Content-Type, Accept,AUTH-TOKEN");
        if (oRequest.getMethod().equals("OPTIONS")) {
            response.flushBuffer();
        } else {
            chain.doFilter(request, response);
        }
    }
    

提交回复
热议问题