我现在在用asp.net做一个省级的系统软件,用的cookie做的登陆,设置cookie的过期时间是10分钟。但是发现一个问题,如果开着网站10分钟无人操作,cookie的确过期了,需要重新登录。但是把网页关了,再过很久再去浏览页面,cookie还存在,不用登录就可以进入系统。现在想要的效果是,cookie仍然设置过期时间,但是用户关闭页面时也要把cookie注销掉。我找了下,没有发现又 页面关闭之前的 的事件,请问下大虾们怎样才能实现这样呢?
解决方案 »
- mvc
- .net 的 webservice 的传入参数加密问题求解?
- 求高手
- 500元人民币请高手,
- 我想写个新闻系统,如何实现新闻可以像WORD一样在文章任意位置插入图片等,并自动分页
- 各位老大师傅请指点!!!小弟关于网页对话框的,在线等!!!!
- 为什么重装了系统编译以后运行老是出现以下错误: Compilation Error ,要重新编译才能解决,但是重新编译以后又会出现这个问题
- HttpWebRequest 获取源文件
- 帮我写个正则 100分
- 像csdn这样的,有关xml文件的显示是怎么实现的?没分了~~!
- 关于IFrame的用法?
- asp.net 网站配置IIS 调用C++动态连接库DLL文件 错误 异常来自 HRESULT:0x800736B1
如果希望增加时限就会自动存储到缓存中,产生一个文本文件
你新建一个Global.asax 看看里面的事件
如果用户禁用了cookies怎办?而且不管你加密与否,将用户关键数据保存在客户端也不安全。用SESSION吧,废不了你多少服务器资源
Request.Cookies["User_Name"].Value = "";
Response.Cookies.Clear();
HttpCookie aCookie;
string cookieName;
int limit = Request.Cookies.Count;
for (int i = 0; i < limit; i++)
{
cookieName = Request.Cookies[i].Name;
aCookie = new HttpCookie(cookieName);
aCookie.Expires = DateTime.Now.AddDays(-1);
Response.Cookies.Add(aCookie);
}
<script type="text/javascript">
function window.onbeforeunload() {
if (event.clientX > 360 && event.clientY < 0 || (event.altKey)) {
window.onbeforeunload = null;
window.open("logout.aspx");
}
}
</script>可以直接在上面的js函数if里删除cookie的脚本,也可打开一个我们退出的页面.
不设置cookie的过期时间,页面关闭,cookie就自动清除。