springmvc解决跨域问题

public class SimpleCORSFilter implements Filter {

    public void doFilter(ServletRequest req, ServletResponse res, FilterChain chain) throws IOException, ServletException {
        
        HttpServletResponse response = (HttpServletResponse) res;
         HttpServletRequest reqs = (HttpServletRequest) req;  
        response.setHeader("Access-Control-Allow-Origin",reqs.getHeader("Origin"));  
        response.setHeader("Access-Control-Allow-Credentials", "true");  
        response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");  
        response.setHeader("Access-Control-Max-Age", "3600");  
        response.setHeader("Access-Control-Allow-Headers", "x-requested-with");  

        System.out.println("----------哈利路亚-------------1--------"+response.getHeader("Origin"));
        
        chain.doFilter(req, res);
        
        
    }

 

  <filter>
        <filter-name>cors</filter-name>
        <filter-class>com.gosun.controller.base.SimpleCORSFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>cors</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

 

Vue.prototype.baseUrl = "http://IP地址:81/";


//封装axios
const instance = axios.create({
    baseURL: Vue.prototype.baseUrl,
    timeout: 10000,
    withCredentials: true,//跨域
    headers: {
      "Content-Type": "application/x-www-form-urlencoded"
    }//跨域
});


Vue.prototype.axios = instance;
  var rh = new Object();
      rh.ReqId = "ls123";
      rh.Salt = "sssseee";
      var rb = new Object();
      rb.CatId = "00001";

      this.axios({
        method: "post",
        url: "zdm/AppApi/Search/CategoryList",
        data: {
          ReqHead: rh,
          ReqBody: rb
        }
      })
        .then(function(response) {
          _this.msg = response;
        })
        .catch(function(error) {
          console.log(error);
        });

 

posted @ 2017-12-05 17:05  次序  阅读(1355)  评论(0编辑  收藏  举报