2010-07-19 41 views
1

我的問題是,如何發送一個cookie與setRequestHeader。我的代碼,以測試它是這一個: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,它不使用這個。

的幫助

感謝名單

回答

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