document.cookie如何影响XMLHttpRequest?

时间:2016-01-19 21:30:13

标签: javascript html5 cookies

与其他标题不同,I can't set the Cookie header使用XMLHttpRequest.prototype.setRequestHeader

相反,必须通过document.cookie操纵Cookie。

不幸的是,这看起来很不一致。

document.cookie = 'name=foo';
var xhr = new XMLHttpRequest;
xhr.open('GET', url1);
xhr.send();

document.cookie = 'name=bar';
var xhr = new XMLHttpRequest;
xhr.open('GET', url2);
xhr.send();

在Chrome 47和IE 10中,这两个请求都有name=bar。在Firefox 43中,第一个请求为name=foo,第二个请求为name=bar

以下哪些行为符合HTML5标准?如何控制请求的Cookie标头?

(因为我知道我会被问到这个问题:AWS Cloudfront不会查看除Cookie以外的任何标题,以便提供私人内容。并且数百种组合资源不适合投放政策Cookie ,所以我必须为每个请求设置一个不同的策略cookie。这是一个令人遗憾的API,但这就是原因。)

0 个答案:

没有答案