gpt4 book ai didi

asp.net-core - 如何在 ASP.NET Core MVC 中设置 session 超时/到期时间?

转载 作者:行者123 更新时间:2023-12-04 01:36:23 30 4
gpt4 key购买 nike

我正在使用 ASP.NET 零版本 7 的 ASP.NET Core、MVC 和 jQuery 项目。

我正在尝试设置 session 超时/到期时间以在应用程序空闲一段时间时自动从应用程序注销。有人可以让我知道如何做到这一点吗?

在 ASP.NET 零版本 8 中,他们在用户管理设置中提供此配置。

最佳答案

ASP.NET 核心 MVC

MVC 的 session 到期由 ASP.NET Core 通过 cookie 提供,独立于 ASP.NET 零。

调用 ConfigureApplicationCookie之后 IdentityRegistrar.Register Startup.cs :

public IServiceProvider ConfigureServices(IServiceCollection services)
{
// ...

IdentityRegistrar.Register(services); // No change
AuthConfigurer.Configure(services, _appConfiguration); // No change

services.ConfigureApplicationCookie(o =>
{
o.ExpireTimeSpan = TimeSpan.FromHours(1);
o.SlidingExpiration = true;
});

// ...
}

默认值来自 ASP.NET Core v2.2.8 CookieAuthenticationOptions.cs#L30-L36 :

public CookieAuthenticationOptions()
{
ExpireTimeSpan = TimeSpan.FromDays(14);
ReturnUrlParameter = CookieAuthenticationDefaults.ReturnUrlParameter;
SlidingExpiration = true;
Events = new CookieAuthenticationEvents();
}

ASP.NET 零(用于 ASP.NET Core)

ASP.NET Zero v7.2.0+ 提供:
  • 对于 MVC:前端配置和倒计时模式。
    文档:aspnet-core-mvc/v7.2.0/Features-Mvc-Core-Tenant-Settings#user-management
  • 对于 Angular:通过 token 、前端配置和倒计时模式实现 session 超时。
    文档:aspnet-core-angular/v7.2.0/Features-Angular-Tenant-Settings#user-management
  • 关于asp.net-core - 如何在 ASP.NET Core MVC 中设置 session 超时/到期时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59389438/

    30 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com