【发布时间】:2019-02-26 14:39:47
【问题描述】:
在 .Net Core MVC 项目中:我试图在我的控制器操作中以最简单的方式设置一个简单的 cookie,但无法使其持久化并显示在浏览器中。
我的代码:
public IActionResult IndexPost()
{
var option = new CookieOptions();
option.Expires = DateTime.Now.AddMinutes(60);
Response.Cookies.Append(cookieName, "SomeCookieValue", option);
return View();
}
但在浏览器(Chrome)中我看不到它,甚至看不到它:
var cookieValue = Request.Cookies[cookieName];
(cookieName 是一个带有 cookie 名称的变量集)
如果使用 Chrome 扩展程序“EditThisCookie”,我可以手动设置它以确保 Request.Cookies[cookieName] 确实有效,因此错误出现在我的代码的 Append-cookie 中。
【问题讨论】:
-
您是否在开发者选项中检查了 Chrome 的网络选项卡?您应该会看到 IndexPost 请求在那里设置了 cookie 标头。
-
我看到了请求,但没有,cookie 不包括在那里......奇怪。所以不知何故我的代码 Response.Cookies.Append(cookieName, "SomeCookieValue", option) 对响应没有影响?!
标签: c# cookies asp.net-core-mvc