如何从Ajax / xmlhttprequest调用的响应中获取cookie

时间:2013-12-19 11:07:36

标签: ajax cookies xmlhttprequest internet-explorer-10 setcookie

我的应用程序正在使用 xmlHttpRequest 进行网络通话。在响应中,我获得 Set-Cookie 标头(使用fiddler验证)。我需要从javasript访问这些cookie。我尝试使用XmlHttpRequest.getAllResponseHeaders(),它会返回除 Set-Cookie 之外的所有标题。

有没有办法从javascript访问这些cookie?如果是,请提供一些示例。

我的应用程序在Web浏览器控件(IE10),Windows Phone 8上运行。

提前致谢。

2 个答案:

答案 0 :(得分:0)

在等待更具体的答案时,您可以通过post响应发送从服务器设置的所有Cookie,然后在本地设置,如此(使用jQuery使其更容易):

// Client
var cookie;
$.post('example.com',{'stuff':'data'},function(data){
    cookie = data;
});

// Server
if(isset($_POST['stuff'])) echo WhateverTheCookieWouldBe;

答案 1 :(得分:0)

实际上可以通过

访问cookie
document.cookie // this will return a string contains all cookie values separated by semicolon

由于请求的async性质

,实际上并非如此
// Client
var cookie;
$.post('example.com',{'stuff':'data'},function(data){
    cookie = data; 
});

alert(cookie); // undefined