Я снова играю с ASP.NET и попытался установить cookie в одном действии, которое будет прочитано в другом действии.
Странная вещь: cookie устанавливается, но теряет свое значение при доступе к другой странице. Вот мой простой код контроллера:
public class HomeController : Controller
{
public ActionResult About()
{
var cookie = Response.Cookies.Get("sid");
ViewData["debug"] = "Id: " + cookie.Value;
return View();
}
public ActionResult DoLogin()
{
var cookie = new HttpCookie("sid", Guid.NewGuid().ToString());
cookie.HttpOnly = true;
Response.Cookies.Add(cookie);
return RedirectToAction("About");
}
}
Поток выглядит так: сначала я получаю доступ к /Home/DoLogin
, затем меня перенаправляют на /Home/About
, который должен фактически вывести значение куки sid
. Но печенье не имеет никакой ценности.
- Cookies не отключены в моем браузере
- Я знаю, что ASP.NET имеет свой собственный механизм обработки сеансов, просто поигрался и наткнулся на эту проблему с cookie
Спасибо за любые подсказки!