asp.net core webapi Session 内存缓存
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的值
});
#endregionConfigure 方法中:
//设置session
app.UseSession(); //UseSession配置在UseMvc之前控制器中使用:
//存session
HttpContext.Session.SetString("userId",user.UserId);//取
userId = HttpContext.Session.GetString("userId");