ASP.NET MVC Cookie的一个问题

发布时间 2023-12-01 17:17:28作者: talentzemin

代码

项目启动,第一次访问该方法

public ActionResult Index()
{
    Response.Cookies["Test"].Value = "TestCookieValue";
    var result = Request.Cookies["Test"].Value; //此处result会是什么?

    return View();
}

答案:

TestCookieValue

这Response 还没返回,Request就能拿到了?
问就是by design.

https://learn.microsoft.com/en-us/dotnet/api/system.web.httprequest.cookies?view=netframework-4.8.1&redirectedfrom=MSDN#System_Web_HttpRequest_Cookies

继续

以上方法运行后,返回客户端,我们可以看到浏览器中的Cookie

现在如果我们修改了该Cookie值,把它变成“ABC”

刷新页面,又会访问上面的方法

public ActionResult Index()
{
    var result1 = Request.Cookies["Test"].Value; //这个时候,此处result1会是什么?

    Response.Cookies["Test"].Value = "TestCookieValue";
    var result2 = Request.Cookies["Test"].Value; //这个时候,此处result2又会是什么?

    return View();
}

答案:

result1 :ABC
result2 :ABC