登录后10分钟不做任何操作,登录失效问题!(纯cookie实现)

italy0611 2008-09-11 02:47:30
求高手指点!
...全文
428 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
flyingfz 2008-09-12
  • 打赏
  • 举报
回复
呵呵,其实这些问题你自己都能想到,有时候还是需要自己先想想怎么解决,你自己想的解决方法不一定比别人差,你要是觉得你的解决方法不可靠的话,可以在这里或者用其他的方式和大家讨论下你的想法,这样慢慢就能提高了.
koukoujiayi 2008-09-12
  • 打赏
  • 举报
回复
记号
zhnzzy 2008-09-12
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 italy0611 的回复:]
。。。我的页面多的要死,难道每个页面都要存取一次cookie,而且好多页是模板生成的静态页,没办法重写Page类,我想问的是不是可以从应用程序级别上做文章。

Form验证之类的,这个类FormsAuthentication的有关做法。
[/Quote]
你没有公用一个基类吗?然后将COOKIE实效的时间放在这个基类里面
zhnzzy 2008-09-12
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 italy0611 的回复:]
各位多谢了啊,我说的是,如果你30分钟内没做任何事情,COOKIE失效。如果你动过页面,做过请求,则30分钟往后顺延,就类似session内置的那种功能。


你们这样指定cookie.Expires的时间,那无论我做些什么30分钟一到,我都要被登出的。。。
[/Quote]
你不会做动作的时候判断COOKIE有没有,如果有就家30分钟吗?晕
「已注销」 2008-09-12
  • 打赏
  • 举报
回复
ding!!!!!!
「已注销」 2008-09-11
  • 打赏
  • 举报
回复
。。。我的页面多的要死,难道每个页面都要存取一次cookie,而且好多页是模板生成的静态页,没办法重写Page类,我想问的是不是可以从应用程序级别上做文章。

Form验证之类的,这个类FormsAuthentication的有关做法。
rohan 2008-09-11
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 rohan 的回复:]
登录时把登录时间存入cookie
当刷新页面时,判断时间是否过期,过期则清空cookie退出,否则把cookie里的时间更新一下.
[/Quote]

看不明白吗?
「已注销」 2008-09-11
  • 打赏
  • 举报
回复
各位多谢了啊,我说的是,如果你30分钟内没做任何事情,COOKIE失效。如果你动过页面,做过请求,则30分钟往后顺延,就类似session内置的那种功能。


你们这样指定cookie.Expires的时间,那无论我做些什么30分钟一到,我都要被登出的。。。
flyingfz 2008-09-11
  • 打赏
  • 举报
回复
就是啊,cookie可以设置过期时间的,登录的时候,把登录时间加上限定的时间,然后,以后每次请求都会验证cookie,再把cookie的过期时间加上限定的时间.如果cookie验证没有通过,自然就是登录失效了
zhnzzy 2008-09-11
  • 打赏
  • 举报
回复
登陆时候先设置COOKIE时间,


HttpCookie cookie = HttpContext.Current.Request.Cookies["LOGIN"];
cookie.Expires = DateTime.Now.AddMinutes(30);
HttpContext.Current.Response.AppendCookie(cookie);


然后当用户操作页面在PAGE_LOAD里面首先判断


if (Context.Request.Cookies["LOGIN"] == null)
{
Context.Response.Redirect("login.aspx");
return;
}
「已注销」 2008-09-11
  • 打赏
  • 举报
回复
。。。无语了,等高手进来。
lijin84100 2008-09-11
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 lovehongyun 的回复:]
给cookie设置过期时间了吗?

如果不设置.cookie是基于浏览器进程的.
[/Quote]

我就是这么做的!
「已注销」 2008-09-11
  • 打赏
  • 举报
回复
是一定时间内客户端没有http请求的话,强制它登出啊。
lovehongyun 2008-09-11
  • 打赏
  • 举报
回复
还有就是你确定你没用session,全用的cookie?
zld_baggio 2008-09-11
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zhong2006 的回复:]
cookie 时间段设置长点
DateTime dt = DateTime.Now;
timeSp = new TimeSpan(0, 1, 0, 0);

cookie1.Expires = dt.Add(timeSp);
[/Quote]
lovehongyun 2008-09-11
  • 打赏
  • 举报
回复
给cookie设置过期时间了吗?

如果不设置.cookie是基于浏览器进程的.
飞不动 2008-09-11
  • 打赏
  • 举报
回复
如果IE设置禁用cookie怎么办?
这应该是一个Session过期的问题吧。web.config文件中设置你的session超时时间,并且在每个页面上对session做出判断。
zhong2006 2008-09-11
  • 打赏
  • 举报
回复
cookie 时间段设置长点
DateTime dt = DateTime.Now;
timeSp = new TimeSpan(0, 1, 0, 0);

cookie1.Expires = dt.Add(timeSp);
rohan 2008-09-11
  • 打赏
  • 举报
回复
登录时把登录时间存入cookie
当刷新页面时,判断时间是否过期,过期则清空cookie退出,否则把cookie里的时间更新一下.

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧