ASP vnext 中的 Cookie

Cookies in ASP vnext

如何在 ASP MVC 6 中使用 cookie?我想设置和读取 cookie 变量。

HttpCookie class 无法解析。

只有以下行有效,但我找不到在添加 cookie 后读取它的方法。 Response.Cookies.Append("test", "test");

看看官方 MusicStore 示例中如何使用 cookie:https://github.com/aspnet/MusicStore/blob/a7ba4f8ffe5ed23b2a2d55e8e1226e64066a7ada/src/MusicStore/Models/ShoppingCart.cs#L152

public string GetCartId(HttpContext context) 
{ 
    var sessionCookie = context.Request.Cookies.Get("Session"); 

Victor Hurdugaci 的回答适用于 RC2 之前的版本,这有一点变化,所以这是当前(希望是最终)阶段:

您通过以下方式在响应中设置 cookie:

HttpContext.Response.Cookies.Append("key", "value");

这里的cookies是一个IResponseCookies。你只能写信给它。

这将被发送到浏览器。

可以在Request对象上读取浏览器发送的cookies:

HttpContext.Request.Cookies["key"]

这里的Cookies是一个IRequestCookieCollection,所以你也可以从中读取。