我的问题是,如何使用setRequestHeader发送cookie。我测试它的代码就是这个:
var client = new XMLHttpRequest();
client.open('POST', 'url');
client.setRequestHeader('Cookie', 'test=mycookie');
client.setRequestHeader('Cookie', 'test=mycookie');
alert("start");
client.onreadystatechange = function() {
if(client.readyState == 4 && client.status == 200){
alert("beginning");
alert(client.getAllResponseHeaders());
document.getElementById('test').innerHTML = client.responseText;
alert("end");
}
}
client.send();
getAllResponseHeaders() - 方法只提供caontent类型。但我怎么看是否设置了cookie?
所以它必须是javascript和document.cookie是不可能的,因为我为诺基亚WRT开发并且它不使用它。
Thanx求助
答案 0 :(得分:0)
XMLHttpRequest的设计不能满足您的要求。正如你正确地指出document.cookie是在javascript中设置cookie的常用方法,通过这样的AJAX请求cookie是没有意义的。
如果您不能使用document.cookie,则将您的cookie参数作为发布数据传递,并让您的服务器端处理程序在响应中设置cookie。
例如,如果您的服务器端处理程序是Java servlet:
Cookie myCookie = new Cookie("Name", "Value");
HttpServletResponse res = getContext().getResponse().addCookie(myCookie);