会话到期时关闭浏览器?asp.net



我有一个asp.net网页,在会话到期之前有60秒的空闲时间窗口。是否有一种方法(无论是通过asp,或c#代码背后)关闭浏览器 -或者最好只是选项卡- 在Session_End事件?

我在SO上看到过很多想要做相反的事情(在浏览器关闭时结束会话),但不是我需要的。

你不能关闭浏览器,但你可以重定向到一个"Session Expired"的页面:

    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")));
    }

你可以看看这个例子-在ASP中警报会话超时。净

它基本上在超时前警告用户(例如,美国银行网站)。一旦达到时间限制,将用户重定向到注销页面。

供参考:如果你在没有警告的情况下重定向或关闭一个页面,用户会很生气的。