1. 程式人生 > 其它 >redis 分散式快取session 方式登入

redis 分散式快取session 方式登入

使用 步驟

1 nuget Microsoft.Extensions.Caching.Redis

2註冊服務+注入

services.AddSession() ;

services.AddDistributedRedisCache (options =>
{
options.Configuration = "127.0.0.1:6379";
options. InstanceName = "RedisDistributedCache";

});

app.useSession()
3啟動Redis-配置連線
4 Session共享---分散式快取

頁面測試:

public IActionResult Session (
string result = base.HttpContext.Session.GetString("currentUser");

if (string.IsNull0rWhiteSpace(result))
base.HttpContext.Session.SetString("currentUser","jason") ;

return view () ;

}

本質上還是利用ioc 擴充套件session 的 快取機制

public static IServiceCollection AddSession(this IServiceCollection services){
if (services == null)
{
throw new ArgumentNullException(nameof(services)) ;
services.TryAddTransientK<ISessionStore,DistributedSessionStore
>() ;
services.AddDataProtection( ;
return services;
}

DistributedSessionStore  實現了IdistributedCache