【发布时间】:2016-06-22 16:03:39
【问题描述】:
如何在 ASP MVC 6 中使用 cookie?我想设置和读取 cookie 变量。
HttpCookie 类无法解析。
只有以下行有效,但添加后我找不到读取 cookie 的方法。 Response.Cookies.Append("test", "test");
【问题讨论】:
-
没有读取响应cookie的API
标签: asp.net-core asp.net-core-mvc
如何在 ASP MVC 6 中使用 cookie?我想设置和读取 cookie 变量。
HttpCookie 类无法解析。
只有以下行有效,但添加后我找不到读取 cookie 的方法。 Response.Cookies.Append("test", "test");
【问题讨论】:
标签: asp.net-core asp.net-core-mvc
看看官方 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");
这里的 cookie 是 IResponseCookies。你只能写它。
然后这将被发送到浏览器。
可以在Request对象上读取浏览器发送的cookies:
HttpContext.Request.Cookies["key"]
这里的 Cookies 是一个IRequestCookieCollection,因此您也可以从中读取。
【讨论】: