MVC会话过期属性未触发

本文关键字:属性 会话 过期 MVC | 更新日期: 2023-09-27 17:51:04

我正在尝试使用下面的链接实现会话过期属性:

全局会话超时重定向。

我已经添加了类并将属性添加到控制器方法中。

但是一旦会话超时,它似乎不会触发属性类。

我知道会话过期,因为我试图在全局实现Session_End。Acsx文件即将过期,正在输入代码。

web配置:

<sessionState compressionEnabled="true" timeout="1" />
<authentication mode="Forms">
  <forms loginUrl="/Index" timeout="1" slidingExpiration="true" />
</authentication>

你知道我错过了什么吗?

MVC会话过期属性未触发

这不是会话,而是您正在设置的身份验证cookie过期时间。

表单认证cookie存储在. aspxauth中,它具有用户Id,名称,令牌和时间属性。验证使用authentication

Session是完全不同的。它存储在ASP中。NET_SesionId,它保存了服务器上用户的字典对象/容器。

要设置会话的超时时间,需要在web.config

的session key中设置超时时间。
<sessionState mode="InProc" customProvider="DefaultSessionProvider" TimeOut="1">

这将使您的会话对象在服务器上1分钟过期。

希望它有意义。更多信息请谷歌表单认证和会话的区别。

<标题> shaz