我的webconfig文件中有这个...
<authentication mode="Forms">
<forms loginUrl="~/Account/LogOn" timeout="2880" />
</authentication>
超时2880意味着要花多少秒或分钟?
如何显示我的会话超时时间我需要显示SessionTimeout.aspx页面...
由于
答案 0 :(得分:4)
您可以使用动作过滤器在MVC中识别会话超时。这是a question我问过这个问题。列出的时间是几分钟。 (查看评论链接)
答案 1 :(得分:1)
正如Gabriel所说,使用FormsAuthentication,超时将在幕后发生,这意味着如果用户在时间过期后访问页面,则会要求您再次登录。
我建议将slideExpiration =“true”添加到你的web.config。
此外,您可能希望实现自动注销,因此一旦达到超时,潜在的敏感数据不会被暴露。
如果用户经过身份验证,我会通过调用window.setTimeout(myFunction,30000)来完成此操作。该函数使用JQuery ajax命中一个动作,该动作返回会话到期前剩余的时间。一旦时间量低于零,您就可以通过JavaScript重定向到注销操作。否则该方法只需再次调用window.setTimeout(myFunction,30000),以便继续检查。
您可以通过添加警告消息并允许用户单击使用JQuery ajax的按钮来点击重置计时器的操作来获得更好的效果。
答案 2 :(得分:-1)
在javascript中创建一个计数器,当达到超时时重定向用户。
编辑:据我了解您的问题,当用户长时间处于非活动状态时,您想重定向到该页面吗?