redis 分散式快取session 方式登入
阿新 • • 發佈:2021-10-08
使用 步驟
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