gpt4 book ai didi

c# - .Net cookies 不断返回,过期时间为零

转载 作者:行者123 更新时间:2023-12-02 05:17:58 28 4
gpt4 key购买 nike

我在使用 .Expires cookie 属性时遇到问题。当我读回 cookie 时,它​​会一直返回 01/01/0001 12:00 AM。

这是代码。我在保存下方添加了检索,仅用于调试目的。保存和检索发生在同一文件的不同位置。我故意没有指定域,因为我希望 cookie 在整个站点范围内存在。

数据显示很好,只是没有过期。

注意:我正在使用 .Net Framework 4 在本地主机下运行的 Visual Studio 2012 下进行测试。

System.Web.UI.Page oPage = this.Page;

HttpCookie oCookie = new HttpCookie("UserData");

// Set the cookie value.
oCookie.Secure = false;
oCookie["Field1"] = strField1;
oCookie["Field2"] = strField2;
oCookie.Expires = DateTime.Now.AddDays(1);

// Add the cookie.
oPage.Response.Cookies.Add(oCookie);


// Get the cookie.
oCookie = new HttpCookie("UserData");
oCookie = oPage.Request.Cookies["UserData"];

最佳答案

除了 cookie 的名称和值,浏览器不会向服务器发送任何内容。设置 cookie 后,无法根据请求检索所有其他属性(expires、domain、path、httponly,...)。

处理此问题的更可接受的方法是在用户尝试访问 protected 资源时将用户重定向到登录页面,并显示类似“您需要登录才能查看此页面。如果您是之前登录过,您的 session 可能已过期。”

(另请注意,您应该在每次请求时重新设置 cookie,以便用户在继续使用该网站时不会被注销。从您的代码中不清楚您是否正在这样做。 )

关于c# - .Net cookies 不断返回,过期时间为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14325328/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com