我試圖做一個頁面的「獲取」,並傳入存儲在我的cookie中的id列表。我的假設是,可以從我的請求中獲取該列表中的cookie。但是,我沒有像我期望的那樣在服務器端獲取cookie。我只收到一個「用戶」cookie,但不包含我的信息。無法在HttpRequest中訪問cookie
我想盡量避免在URL中實際傳遞這些值,因爲我試圖儘可能保持乾淨和漂亮的URL。但是,如果以其他方式無法實現,那麼我仍然可以做到。
添加餅乾:
function setCookie(name, value) {
var today = new Date();
today.setTime(today.getTime());
var expires = 30 * 1000 * 60;
var c_name = name;
var exdate = new Date(today.getTime() + (expires));
document.cookie = c_name + "=" + value + ";expires=" + exdate.toGMTString();
}
獲取新的一頁的jQuery:
document.location.href = href;
在我的操作方法:
if (Request.Cookies != null)
{
var myCookie = Request.Cookies[cookieName];
}
//myCookie is always null
不應該一個cookie添加,還可以在請求中訪問嗎?
編輯:
當我現在已經用螢火和FireCookie,我可以看到,cookie不會與請求通過。所以問題是如果我在添加cookie時做錯了什麼?
在發送到服務器之前,您是否確定cookie位於可訪問的域中?你可以使用像Firecookie這樣的工具來獲取這些信息。 https://addons.mozilla.org/en-US/firefox/addon/6683/ – 2010-08-13 15:02:39
我不確定關於ASP.NET的一部分,但爲了讓瀏覽器沿請求發送cookie,它的域**和**路徑應該匹配請求URI。首先集中你的那一部分。 – BalusC 2010-08-13 15:03:14
設置cookie是一個煩人的JavaScript。由於您使用的是jQuery,我建議使用cookie插件:http://plugins.jquery.com/project/cookie。 – 2010-08-13 15:06:25