繁体   English   中英

ASP.NET Cookies

[英]ASP.NET Cookies

伙计们,我正在尝试创建一个使cookie保持活动状态的网站,只要用户在该站点中处于活动状态即可。 我的想法是在网站主页上创建一个cookie,如下所示:

HttpCookie cookie = new HttpCookie("KeepAlive","1");
cookie.Expires = DateTime.Now.AddMinutes(20);
Request.Cookies.Add(cookie);

如果我在每个页面的Page_Load事件中都包含此代码,则应继续刷新cookie。 如果20分钟后cookie失效,它将把它们踢回到主屏幕。 我只是想确保我要以正确的方式进行操作。

谢谢

我认为您应该考虑使用会话。 使用会话,您可以设置超时(默认为20分钟),其余时间将自动发生(更新活动状态等)。

编辑(有关会话的更多信息):

通过使用会话,可以在整个体验中确定站点用户。 这是自动发生的,无需开发人员为其编写代码或测试其是否有效。

会话存储在服务器上,因此更安全(用户可以修改其Cookie)

您可以在任何会话的开始或结尾运行代码(使用global.asax文件)

可以将会话设置为无cookie(用户可能禁用了cookie)

您可以将c#对象存储在会话变量中,以便可以通过活动会话(存储在服务器内存中)使用它们。

在这种情况下,我想不出更多优势了。 我邀请其他人发表自己的想法。

如果您确实要为此使用cookie, 是的,您的方法正确

这将起作用,尽管您可能想研究使用会话cookie。

您需要将cookie添加到Response对象,而不是Request对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM