setRequestHeader + Cookie

时间:2010-07-19 12:18:23

标签: javascript nokia

我的问题是,如何使用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求助

1 个答案:

答案 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);