1.在控制器上新增一个方法

public IActionResult SessionAndCookie()
        {
            string result = HttpContext.Session.GetString("session_key");
            if (string.IsNullOrWhiteSpace(result))
            {
                HttpContext.Session.SetString("session_key", "我是session的值");//实际上这里value "Richard"都做了加密操作
            }
            HttpContext.Response.Cookies.Append("cookie_key", "我是Cookie的值", new CookieOptions { Expires = DateTime.Now.AddMinutes(30) });//实际上这里value "Richard"都做了加密操作

             ViewBag.session = HttpContext.Session.GetString("session_key");
              HttpContext.Request.Cookies.TryGetValue("cookie_key", out string _cookie);
            ViewBag.cookie = _cookie;
            return View();
        }

2. 在StartUp类上,添加Session服务,并使用它

ASP.Net Core 5.0 MVC Session的添加,及它与Cookie的关系

 ASP.Net Core 5.0 MVC Session的添加,及它与Cookie的关系

 3. 运行程序,看效果

ASP.Net Core 5.0 MVC Session的添加,及它与Cookie的关系

 从上图中,我们可以看出 session的值,并不会存储在客户端(浏览器),而是会以AspNetCore.Session的形式 将用户SessionId 存储在 浏览器 Cookie 键值对中,以便在下一次请求中方便识别身份。

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-09-07
  • 2021-05-26
  • 2021-06-28
  • 2022-12-23
  • 2021-10-29
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-07-24
  • 2021-05-27
  • 2022-02-07
相关资源
相似解决方案