我试图做一个页面的“获取”,并传入存储在我的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