ajax 跨域请求没有带上cookie 解决办法

公司项目前后端分离。。 前端全部html 静态页面。。 后端java 接口服务

由于前后端分离,出现跨域问题。 为了解决,我们使用jsonp 方式请求接口服务,暂时解决了跨域问题(使用jquery ajax type:jsonp 方式)。

某天前端发送一个请求,非常长,而甲方要求只能使用ie 浏览器,url请求长度要求 2083 。超了。。改为post 请求。

一切顺利,发送请求。。报错:没有登录。。调试发现是 cookie为空。

百度发现原来是浏览器安全原因。。局域跨域传送cookie .. 解决办法如下:

$.ajax({type: 'POST',url:"",data:{},dataType:"JSON", 
        xhrFields: {
withCredentials: true
},
crossDomain: true,
function(data){alert(data)}});
并且 java端
response.setHeader("Access-Control-Allow-Credentials", true);
response.setHeader("Access-Control-Allow-Origin", "www.xx.com");

  

  

参考:   http://blog.csdn.net/u010865433/article/details/52786677

上一篇:BZOJ4738 : 汽水


下一篇:Part 5 - Django ORM(17-20)