ajax跨域请求传输cookie

来源:互联网 发布:c语言编程步骤 编辑:程序博客网 时间:2024/04/28 02:18

ajax跨域请求后台取不到cookie,记录一下吧!直接贴代码了。

前端请求:

$.ajax({  
        type : "post",  
         url :  "http://m.zy.com:8080/weblogin",  
          xhrFields: {
                      withCredentials: true
             }, crossDomain: true,      
         data : {
          phone:15011110000,
          password:11111111,
          type:0
         },
         success : function(data,text,res){ 
          console.log(data);
          console.log(text);
          console.log(res.getResponseHeader("setCookie"));
         },
         error:function(data){
          console.log(data);
         }
   });

主要加上xhrFields,crossDomain。


后端:

response.setHeader("Access-Control-Allow-Credentials", "true");
        response.setHeader("Access-Control-Allow-Origin", request.getHeader("origin"));

暂时算是解决了问题,但是还有一个问题没弄明白。只有A站与B站的的二级域名相同的时候才能成功,比如:A站zy.tutu.com  B站sf.tutu.com,只有这种情况前端才会把cookie传到后台,如果B站变成sf.toto.com就不行了。做个记录,以后看能不能找到解决办法吧。