我正在从我的前端到另一个域的后端发布帖子以创建与AJAX的会话。
//create a user session (asynchronously)
$.ajax({
method: "POST",
url: api_url + "/sessions",
dataType: 'text'
})
.done(function(sessionid) {
console.log('Sessionid: ', sessionid);
alert("Session created: " + sessionid);
});
return;
服务器在响应标头中以cookie响应:
Access-Control-Allow-Headers:Origin,X-Requested-With,Content-Type, 接受
访问控制允许来源:*
允许:POST
缓存控制:无缓存,必须重新验证
连接:保活
内容类型:文本/无格式
日期:星期二,2015年6月23日08:49:11 GMT
Expires:Sat,1997年7月26日05:00:00 GMT
的Set-Cookie:的myCookie = S%3A6eb8444b-48dd-4084-91aa-3cf14c029b30.c0vbfPAvk6IkAlUE3nGXLEP3p09FDZejokgLyl5KifA; 路径= / API;到期=星期六,2015年9月5日23:12:35 GMT
当我检查浏览器的资源选项卡时,我发现此cookie未被设置。 如何设置此cookie?
更新
我将此添加到jQuery AJAX请求中:
xhrFields: {
withCredentials: true
}
我现在可以看到请求包含Cookie标头,并且服务器上只存储了一个会话。所以它按预期工作。
但是,我仍然没有在资源标签中看到cookie。
答案 0 :(得分:0)
咄。 cookie是在另一个域上为/ api设置的。因此,它不会被设置为我发布的页面的cookie。