ASP vnext中的Cookie

时间:2015-03-15 18:53:40

标签: asp.net-core asp.net-core-mvc

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

HttpCookie课程无法解决。

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

2 个答案:

答案 0 :(得分:12)

查看官方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"); 

答案 1 :(得分:7)

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

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

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

这里的cookie是IResponseCookies。你只能写信给它。

然后将其发送到浏览器。

您可以在Request对象上阅读浏览器发送的cookie:

HttpContext.Request.Cookies["key"]

此处Cookie是IRequestCookieCollection,因此您也可以阅读它。