我有一个从一个子域到另一个子域的ajax请求,即sub1.example.com => sub2.example.com,虽然我有一个所有域的cookie。 (cookie domain='.example.com'
)
document.cookie='myCookie=value;domain=.exmaple.com'
$.ajax( {url:'sub2.example.com' });
但无论如何都不会将cookie发送到服务器(node.js服务器)。
为什么会这样,可以做些什么?
答案 0 :(得分:0)
要解决此问题,请在请求中添加withCredentials:true
:
$.ajax( {url:'sub2.example.com',
xhrFields: {
withCredentials: true
}
});
在服务器端(在我的情况下是node.js),添加allow Access-Control-Allow-Credentials:true
res.header("Access-Control-Allow-Credentials", "true")
将发送域cookie。