请教:现在有一个SessionID,怎么判断此SessionID的Session已经过期了? 如题... 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 判断一个Session是否过期,你应该在系统一开始时,赋予一个值,比如:Session["aa"] = "xx";然后在页面代码中判断if(Session["aa"] == null){//此时代码已经过期} 我用SQL Server 管理Session状态可以判断SessionID是否过期.但是,我不知道那个用户是否已经关闭IE,离开了.因为我关掉IE时,Session的过期时间还没到.还有就是客户机意外停电后,那个SessionID还在服务器内存,我的过期时间是20分钟.请问能否在客户机停电的时候,马上让这个Session过期? 没有办法,session本身的机制就是如此。这个一向是个难题,不是那么容易解决的。 你必须建立一个表,每个用户登录进来之后,记录他的ID号,并且在session_end里面,等用户退出的时候,删除他的记录(或停用),如此,每个用户在登录的时候,都到这个表里面去找一下,如果找得到记录,表示已经有人以此ID号登录,即不能再登录。 现在还有几个疑问如果客户机突然死机,或者停电,非正常状态退出,该怎么删除他的记录呢?环境一:假设现在用户死机,用户重启后再登录,表里的记录并不是停用状态,用户的记录还在...如果他直接关闭IE,是可以在IE退出之前将记录删除.但是好像要在每个页面都要加入这样的功能.(好像不切实际?) 是的,比较难实现,除非你在客户端利用XMLHTTP不断的(setTimeout)向服务器请求,服务器可以通过这个请求来判断客户端是否还存在(告诉服务器KeepAlive)或者不断的刷新一个看不见的框架页面也可以达到这个效果。 判断一个Session是否过期,你应该在系统一开始时,赋予一个值,比如:Session["aa"] = "xx";然后在页面代码中判断if(Session["aa"] == null){//此时代码已经过期} 没有什么好的办法,或许可以通过服务器和客户端的实时交互来满足你的要求。比如:客户端隐藏一个iframe,间隔性地和服务器通信,服务器在一定时间内没有收到客户端的请求以后,就判定为退出。 求教有句话不懂了 请问有一组TextBox,想通过“增加”,“删除”按钮来添加,减少一组TextBox,请问大家如何实现? 连接池的问题? VB2008 不切换页面实现 展开/关闭子列表 有朋友用水晶报表,是要动态改变列的个数的吗?如何实现呢? 我们新建了一个群,希望大家能够踊跃加入。让我们一起学习,共同努力 为什么窗体程序 (未响应) 这问题问了好久,没人提供答案!收下pop邮件后.如何把标题、内容分解出来?有没例子? 高分请教 ASP.NET开发流程 一点点小问题。。。希望可以快些得到答案。在线等! 在文本框中如何输入<HTML>这样的代码? 关于DataGrid动态设定列的宽度
Session["aa"] = "xx";
然后在页面代码中判断
if(Session["aa"] == null)
{
//此时代码已经过期
}
但是,我不知道那个用户是否已经关闭IE,离开了.
因为我关掉IE时,Session的过期时间还没到.还有就是客户机意外停电后,那个SessionID还在服务器内存,我的过期时间是20分钟.请问能否在客户机停电的时候,马上让这个Session过期?
这个一向是个难题,不是那么容易解决的。
如果客户机突然死机,或者停电,非正常状态退出,该怎么删除他的记录呢?环境一:
假设现在用户死机,用户重启后再登录,表里的记录并不是停用状态,用户的记录还在...
如果他直接关闭IE,是可以在IE退出之前将记录删除.
但是好像要在每个页面都要加入这样的功能.(好像不切实际?)
Session["aa"] = "xx";
然后在页面代码中判断
if(Session["aa"] == null)
{
//此时代码已经过期
}
客户端隐藏一个iframe,间隔性地和服务器通信,服务器在一定时间内没有收到客户端的请求以后,就判定为退出。