【发布时间】:2011-05-12 04:13:22
【问题描述】:
我需要一个 HttpOnly 身份验证 cookie 才能使用:
mydomain.com
www.mydomain.com
abc.mydomain.com
这样我就可以通过一次登录登录到所有三个地方。
通过将我的 cookie 域设置为:
.mydomain.com
这是设置 cookie 的响应标头:
MYAUTHCOOKIE=FOO; domain=.mydomain.com; path=/; HttpOnly
这一切都适用于正常的浏览器请求。
但是,我需要从mydomain.com 和www.mydomain.com 向abc.mydomain.com 发出AJAX 请求。
当我发出请求时,它没有通过身份验证 cookie。为什么会这样,我该怎么办?
如果我向与 JS 所在页面相同的主机发出请求,它会发送 cookie:s
这是我的请求代码:
$.ajax({
type: "POST"
, data: { data: { foo: bar} }
, dataType: "json"
, url: "http://abc.mydomain.com/foo"
, timeout: 5000
, success: function (data, textStatus) {
alert('woo!');
}
, error: function (xhr, textStatus, error) {
alert('meh');
}
});
这是一些跨域策略吗?为什么 cookie 域不起作用?
谢谢
【问题讨论】:
标签: jquery ajax cookies cross-domain