相关疑难解决方法(0)

保持ASP.NET会话开放/活跃

只要用户打开浏览器窗口,哪种最简单,最不显眼的方式可以使ASP.NET会话保持活动状态?是时候调用AJAX吗?我想阻止以下情况:有时候用户长时间打开窗口,然后输入内容,并且提交时不再有效,因为服务器端会话已过期.我不希望在服务器上增加超过10分钟的超时值,因为我希望关闭会话(通过关闭浏览器窗口)快速超时.

建议,代码示例?

c# asp.net session

111
推荐指数
3
解决办法
10万
查看次数

ASP.NET Core 3.1 / Identity 会话永不过期。如何让它在滑动到期时到期?

我的网站的安全检查显示会话(即登录)永远不会过期。我已经测试了自己,发现了同样的情况 - 今天早上我在本地主机上打开了该网站,但我仍然从昨天开始登录。我一直认为它会在 20 分钟后过期,就像在 .NET Framework 应用程序中一样。

我使用 ASP.NET Core Identity 脚手架,除了实现两因素身份验证之外,只需进行很少的更改。

在此输入图像描述

在我的 Startup.cs 中,我有以下代码来添加会话支持:

services.AddSession(options =>
{
    options.Cookie.IsEssential = true;
    options.IdleTimeout = TimeSpan.FromSeconds(10);
    options.Cookie.Expiration = TimeSpan.FromSeconds(10);
});
Run Code Online (Sandbox Code Playgroud)

我在 IdentityOptions 下看不到任何与登录超时相关的代码。

在登录页面上,我专门将任何“记住我”类型的函数硬编码为 false:

await _signInManager.SignInWithClaimsAsync(user, isPersistent: false, claims);

如何让我的登录会话在大约 20 分钟后过期,就像在 .NET Framework 中自动过期一样?

我基本上遇到了与此问题中提到的问题完全相反的问题: asp.net-core2.0 user auto logoff after 20-30 min

这里的大多数问题似乎都在询问如何增加超时,但我需要将其从(看似)无限减少到 20 分钟左右:

asp.net session-state asp.net-identity asp.net-core

4
推荐指数
1
解决办法
3391
查看次数