我一直在尝试使用MVC4在我的浏览器中保存cookie中的纯文本,但由于某种原因它永远不会保存在浏览器中。我在IE,Chrome和FireFox中测试过。
我一直在StackOverflow上尝试不同的解决方案,但它们都没有为我工作。我不知道我做错了什么,我希望有人能帮我解决这个问题。
我一直在使用的代码:
if (Request.Cookies.AllKeys.Contains("testKanti"))
{
// Never makes it here.
}
else
{
HttpCookie cookie = new HttpCookie("testKanti");
cookie.Value = "testKanti";
cookie.Expires = DateTime.UtcNow.AddYears(1);
Response.Cookies.Remove("testKanti");
Response.SetCookie(cookie);
}
我也试过Response.Cookies.Add()
,但这也不起作用。有人熟悉这个问题吗?
答案 0 :(得分:2)
您是否尝试过使用这两种字符串?
Request.Cookies.Add(cookie);
Response.SetCookie(cookie);
我已经尝试过,在我的情况下,它有效
if (Request.Cookies.AllKeys.Contains("testKanti"))
{
// We are here
}
答案 1 :(得分:0)
尝试以下方面的内容:
HttpCookie cookie = new HttpCookie("testKanti");
cookie.Value = "testKanti";
cookie.Expires = DateTime.UtcNow.AddYears(1);
Response.Cookies.Add(cookie);
查看您是否可以首先使用cookie的设置,因为在返回响应之前将其从Response
对象中删除可能会导致问题。