我在本地遇到了一个问题,在 Chrome
和 Firefox
上出现,但是在 Edge
上没有出现。
这段代码将正常工作,并设置 cookie:
[HttpPost]
public ActionResult Change(string val)
{
var cookie = new HttpCookie(CookieName) { Value = val, Expires = DateTime.Now.AddYears(1) };
Response.Cookies.Add(cookie);
return Content("");
}
然而,如果我将Expires更改为只有
300天
,则cookie不会在Request Cookies
中返回(对于Change
请求仍然可见在Response Cookies
中)。
编辑:
该操作通过jquery ajax ($.post
)调用; 大约半年前它可以工作。
[HttpPost] public ActionResult Change(string val) { var cookie = new HttpCookie("myCookie") { Value = val, Expires = DateTime.Now.AddDays(300) }; Response.Cookies.Add(cookie); return Content(" a "); } public ActionResult Check() { var cookies = Request.Cookies; return View(); }
- SamGhatak