c# Asp.net获取javascript中设置的Cookie过期时间总是返回01.01.0001
c# Asp.net getting Cookie expiration time set in javascript always returns 01.01.0001
我使用一个javascript函数来存储cookie:
createCookie("teaser", "teaser", 7);
function createCookie(name, value, days) {
var expires = "";
if (days) {
var date = new Date();
date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
expires = "; expires=" + date.toGMTString();
}
document.cookie = name + "=" + value + expires + "; path=/";
return value;
}
当我在浏览器中检查cookie时,cookie的有效期是正确设置的:25. 十月2011 16:12:17
但是当我在c#中去获取值时,截止日期被设置为01.01.0001。
var cookie = Request.Cookies["teaser"];
if (cookie != null && teaserList.Count() > 0)
{
cookie.Expires is 01.01.0001
什么线索吗?
Egghead说:
浏览器负责管理cookie,以及cookie的过期时间和日期帮助浏览器管理其cookie存储。因此,虽然您可以读取cookie的名称和值,但您无法读取无法读取cookie的过期日期和时间。当浏览器向服务器发送cookie信息,浏览器不包含过期信息。cookie的过期属性总是返回日期时间值0。)如果你关心的是cookie的过期日期,您必须重置它。
浏览器不向服务器发送cookie的过期日期,这是根据HTTP规范。
浏览器只发送cookie的名称和值
cookie对象上的Expires属性仅在设置cookie的过期日期时使用,该cookie将在写入响应中,而不是在读取请求中。
当读取cookie是过期属性值总是将为空。通过检查HTTP报头,您可以自己看到这一点。如果你真的想读取一个cookie的过期值,试着把它写入值本身,或者使用另一个包含过期日期值的cookie(你需要自己保持它们同步)。
相关文章:
- Java脚本时间添加
- 如何在Analytics.js中始终了解最新的cookie过期时间
- AngularJs的$cookies在过期时间内不起作用
- Chrome 不允许使用过期时间少于 4 小时的 Cookie
- htaccess设置js的过期时间
- 设置 Cookie 过期时间
- 使用 Javascript 创建 Cookie 并设置过期时间
- 是否可以在javascript中调用GCM过期时间
- jQuery cookie的过期时间
- 美元.cookie过期时间
- c# Asp.net获取javascript中设置的Cookie过期时间总是返回01.01.0001
- 过期或时间限制套接字.node.js中的IO连接
- Oracle APEX,使页面在一段时间后过期
- 存储过期日期/时间戳的正确方法是什么?
- 修改此函数使cookie的过期时间为30秒
- 如何延长cookie的过期时间,在php中设置
- 设置cookie过期时间
- JQuery Cookies设置过期时间
- 在javascript中添加过期时间
- 如何实现将新的Firebase自定义身份验证最大过期时间设置为1小时的用例