我有一个asp.net网页,在会话过期之前有60秒的空闲时间窗口。有没有办法(通过asp或c#代码)关闭浏览器 - 或者最好是在Session_End事件中的标签 - ?会话过期时关闭浏览器? asp.net
我见过很多关于SO的帖子,想做相反的事情(在浏览器关闭时结束会话),但不是我所需要的。
我有一个asp.net网页,在会话过期之前有60秒的空闲时间窗口。有没有办法(通过asp或c#代码)关闭浏览器 - 或者最好是在Session_End事件中的标签 - ?会话过期时关闭浏览器? asp.net
我见过很多关于SO的帖子,想做相反的事情(在浏览器关闭时结束会话),但不是我所需要的。
无法关闭浏览器,但你可以这样做重定向到一个“会话过期”页:
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
this.PageHead.Controls.Add(new LiteralControl(
string.Format("<meta http-equiv='refresh' content='{0};url={1}'>",
Session.Timeout * 60, "SessionExpired.aspx")));
}
你可以看看下面这个例子 - Alert Session Time out in ASP.NET
它基本上是向用户发出警告超时之前(例如,美国银行网站)。一旦达到时间限制,将用户重定向到注销页面。
仅供参考:如果您在没有警告的情况下重定向或关闭页面,用户将会生气。
我认为你应该放弃这个想法... – Johnny5 2013-03-27 13:48:58
你可以使用JavaScript计时器。 – jrummell 2013-03-27 13:52:04
大多数网上银行应用程序使用客户端JavaScript计时器并重定向到会话过期页面。 – adt 2013-03-27 13:55:59