Tôi đã tìm kiếm diễn đàn jquery, stackoverflow, google, bing và thậm chí cả thành công của yahoo. Mỗi 10 giây Tôi đang cố gắng để tải một dữ liệu văn bản từ servlet logservlet qua đoạn JQuery này:Cookie JQuery jsession không được gửi đến máy chủ
<script type="text/javascript" src="http://code.jquery.com/jquery-1.7.2.min.js"></script>
<script type="text/javascript">
var autorefresh = setInterval(function() {
$.ajax({
url : "logservlet?devkey=chat",
success : function(data) {
$("#log_ta").append(data);
}
});
}, 10000);
</script>
Vấn đề là, trên phía máy chủ tôi không thấy một phiên hợp lệ để tôi cố gắng theo dõi thuộc tính phiên. Vấn đề dường như liên quan đến việc thiếu "Cookie JSESSIONID = xxxxxxxxxxxxxxxxxxxxxxxxxxx" trong tiêu đề của các yêu cầu http từ JQuery. Tôi nhận được tiêu đề phản hồi từ máy chủ, với JSESSIONID luôn luôn thay đổi với mỗi yêu cầu:
Server Apache-Coyote/1.1
Set-Cookie JSESSIONID=9EEAFA2A933E7742D8FEDADD5345B76D; Path=/CumulusServer
Content-Length 0
Date Fri, 23 Mar 2012 13:02:08 GMT
Nhưng JQuery không sử dụng nó sau đó, đây là những tiêu đề yêu cầu:
Host 192.168.1.11:8080
User-Agent Mozilla/5.0 (Windows NT 5.1; rv:5.0) Gecko/20100101 Firefox/5.0
Accept */*
Accept-Language en-us,en;q=0.5
Accept-Encoding gzip, deflate
Accept-Charset ISO-8859-1,utf-8;q=0.7,*;q=0.7
Connection keep-alive
X-Requested-With XMLHttpRequest
Referer http://192.168.1.11:8080//CumulusServer/
các vấn đề là gì đây? Các cuộc gọi "$ .ajax" có phải là phiên không nhận biết được không? Hay tôi bỏ lỡ một số mã ống nước để mã hóa JSESSIONID theo cách thủ công trong mỗi yêu cầu ajax? Vậy thì, nó trông như thế nào? Btw, khi tôi gọi cùng một url từ trình duyệt web, tiêu đề JSESSIONID được gửi đến máy chủ!
Cảm ơn, D.