asp.net core webapi Session 記憶體快取
阿新 • • 發佈:2020-11-25
Startup.cs檔案中的ConfigureServices方法配置:
#region Session記憶體快取 services.Configure<CookiePolicyOptions>(options => { options.CheckConsentNeeded = context => true; options.MinimumSameSitePolicy = SameSiteMode.None; }); //啟用記憶體快取(該步驟需在AddSession()呼叫前使用) services.AddDistributedMemoryCache();//啟用session之前必須先新增記憶體 //services.AddSession(); services.AddSession(options => { options.Cookie.Name = ".AdventureWorks.Session"; options.IdleTimeout = TimeSpan.FromSeconds(2000);//設定session的過期時間 options.Cookie.HttpOnly = true;//設定在瀏覽器不能通過js獲得該cookie的值 }); #endregion
Configure 方法中:
//設定session app.UseSession(); //UseSession配置在UseMvc之前
控制器中使用:
//存session HttpContext.Session.SetString("userId",user.UserId);
//取 userId = HttpContext.Session.GetString("userId");