Я работал над сценарием, чтобы отправить пользователя на целевую страницу, если они уже не видели его сегодня, используя HttpCookie:Bool HttpCookie перенаправлять на целевую страницу не работает успешно
bool userVisited = false;
HttpCookie cookie = Request.Cookies["Hoarding"];
if (cookie == null)
{
cookie = new HttpCookie("Hoarding");
cookie.Values.Add("userVisitedSplash", "true");
cookie.Expires = DateTime.Now.AddDays(1);
cookie.HttpOnly = true;
this.Page.Response.AppendCookie(cookie);
}
else
{
if (!Boolean.TryParse(cookie.Values["userVisitedSplash"], out userVisited))
{
userVisited = false;
}
else
{
Response.Redirect("/default-splash.aspx");
}
}
Этот код перенаправляется успешно, но после нажатия кнопки «САЙТ» на целевой странице он снова перенаправляется на всплеск. Не принимая во внимание, что он уже посетил его.
Что-то явно не так?
Вы видите, что cookie установлен в браузере? – VisualBean
Проблема в том, что последняя ветвь 'else' будет принята, если есть cookie и TryParse успешно. – user1429080