ASP.NET Core 使用Redis存儲Session

前言

Session是咱們在web開發中常用的對象,它默認是存在本機的,可是在ASP.NET Core中咱們能夠十分方便的將Session的存儲介質改成分佈式緩存(Redis)或者數據庫(SqlServer)。分佈式的緩存能夠提升ASP.NET Core 應用的性能和可伸縮性 ,尤爲是在託管在雲中或服務器場環境中web

使用

ASP.NET Core 已經爲咱們實現了Redis緩存。redis

1.配置服務
public void ConfigureServices(IServiceCollection services)
{
            

    services.AddMvc();

    //添加redis
    services.AddDistributedRedisCache(options =>
    {
        options.Configuration = "localhost";
                
    });

    //添加session
    services.AddSession(options =>
    {
        options.IdleTimeout = TimeSpan.FromMinutes(10); //session活期時間
        options.Cookie.HttpOnly = true;//設爲httponly
    });
}
 2.啓用Session
public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
    //使用session
    app.UseSession();

    ...
}

對Session進行操做

使用 HttpContext.Session來獲取Session對象數據庫

例:HttpContext.Session.SetString("userid","1000");緩存

運行項目,能夠看到redis已經有咱們剛剛訪問所建立的Session服務器

相關文章
相關標籤/搜索