У меня есть действие с контроллером, которое вызывает частный метод, который обрабатывает файл cookie. Проблема в том, что cookie вообще не создается. Я прочитал несколько сообщений в SO, но я не нашел ответа, поскольку считаю, что мои файлы cookie в этом коде верны.ASP.NET MVC 5 - Cookies не созданы
Есть ли какой-либо параметр web.config, который мне нужно проверить в отношении файлов cookie? Я также пробовал разные браузеры.
Я отлаживал код, и я вижу, что cookie действительно установлен в коде, но как только я загружаю страницу и просматриваю файлы cookie, cookie там нет.
private ABHomeModel HandleWhiteBoxCookie(ABHomeModel model)
{
var whiteBox = _whiteBoxService.GetActiveWhiteBox();
if (model.WhiteBox != null)
{
const string cookieName = "whiteBox";
var whiteBoxCookie = HttpContext.Request.Cookies.Get(cookieName);
if (whiteBoxCookie != null)
{
var displayedTimes = Convert.ToInt32(whiteBoxCookie.Value);
if (displayedTimes < 2)
{
displayedTimes++;
var cookie = new HttpCookie(cookieName, displayedTimes.ToString())
{
Expires = new DateTime().AddMonths(1),
Secure = false
};
HttpContext.Response.Cookies.Set(cookie);
ViewBag.IsWhiteBoxActive = true;
}
else
{
ViewBag.IsWhiteBoxActive = false;
}
}
else
{
var cookie = new HttpCookie(cookieName, "1")
{
HttpOnly = true,
Domain = Request.Url.Host,
Expires = DateTime.Now.AddMonths(1),
Secure = false
};
HttpContext.Response.Cookies.Add(cookie);
ViewBag.IsWhiteBoxActive = true;
}
model.WhiteBox = whiteBox;
}
return model;
}
попытка захвата трафика и посмотреть, что ответ выглядит как – Steve
Стив Фентона это объяснило довольно хорошо на этом посту. http://stackoverflow.com/a/4285929/4216075 –