services.AddSession(s => {
s.Cookie.Name = ".Web.Session";
s.Cookie.HttpOnly = true;
s.IdleTimeout = TimeSpan.FromSeconds(10);
});
然后在 Controller 里
HttpContext.Session.Set("User_Role", ur);
有两个问题不懂
- 设置这个 Session 的时候会自动设置客户端的 cookie,但是当客户端已经有了 cookie,后面无论再怎么请求这个接口,都不会重新设置覆盖这个 cookie,必须手动把 cookie 删除才行,这是为何?
- 自动设置的 Cookie 和后台 HttpContext.Session.Id 看到的不太意义,哪个才是 session-id 呢?
第二个问题解决了,源码上说的是 This is not the same as the session cookie