Неправильная дата отправки HttpCookie в браузер - PullRequest
0 голосов
/ 17 октября 2018

У меня проблема при отправке истечения HttpCookie в браузер, я устанавливаю его с помощью DateTime.Now, но в разных браузерах появляется другое значение.

Вот код и то, что отображается в браузере.

PS: я протестировал следующие браузеры (Chrome, Firefox и Edge), и возникает та же проблема.

var expiration = DateTime.Now.AddMinutes(30);
var authTicket = new FormsAuthenticationTicket(1, usr.Id.ToString(), DateTime.Today, expiration, true, string.Empty);
string encryptedTicket = FormsAuthentication.Encrypt(authTicket);

var cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket)
{
   Secure = Request.RequireSSL(),
   Path = FormsAuthentication.FormsCookiePath,
   Domain = FormsAuthentication.CookieDomain,
   Expires = authTicket.Expiration
 };

 Response.Cookies.Add(cookie);

Cookie в браузере

Отладка срока действия

1 Ответ

0 голосов
/ 17 октября 2018

пожалуйста, соблюдайте код ниже:

var authTicket = new FormsAuthenticationTicket(1, usr.Id.ToString(), DateTime.Today, expiration, true, string.Empty);

В третьем параметре вы используете DateTime.Today, и правильный способ - использовать DateTime.Now.

Это должен быть правильный код:

var authTicket = new FormsAuthenticationTicket(1, usr.Id.ToString(), DateTime.Now, expiration, true, string.Empty);

Пожалуйста, дайте мне знать, если это работает для вас.Привет.

...