Срок действия файла cookie в браузере не истек, когда веб-сайт развернут на рабочих серверах - PullRequest
0 голосов
/ 27 февраля 2019

Мы используем безопасный cookie, чтобы запомнить аккаунт на нашем сайте.После завершения обработки учетной записи файл cookie удаляется, и обработка перенаправляется на страницу сайта для выбора следующей учетной записи.

При локальной отладке файл cookie удаляется по назначению.Однако при развертывании сайта на производственных серверах IIS браузер не просрочил срок действия файла cookie, хотя я вижу, что файл cookie с истекшим сроком действия отправляется в файлах cookie ответа.

Следующий код находится в файле startup.cs:

services.Configure<CookiePolicyOptions>(options =>
        {
            options.CheckConsentNeeded    = context => false;
            options.MinimumSameSitePolicy = SameSiteMode.None;
        });

Код для установки и удаления файла cookie находится здесь:

        public static void SetCookie<T>(this IHttpContextAccessor ca, string key, T cookieData, TimeSpan timeToLive)
    {
        var json    = JsonConvert.SerializeObject(cookieData);
        var options = new CookieOptions {
                                            Domain      = ca.HttpContext.Request.Host.Host,
                                            Expires     = DateTime.Now + timeToLive,
                                            HttpOnly    = true,
                                            IsEssential = true, 
                                            SameSite    = SameSiteMode.Strict,
                                            Secure      = true
                                        };

        ca.HttpContext.Response.Cookies.Append(key, json, options);
    }

    public static void RemoveCookie(this IHttpContextAccessor ca, string key)
    {
        var options = new CookieOptions {
                                            MaxAge  = new TimeSpan(-1),
                                            Expires = DateTime.Now.AddDays(-1),
                                            Secure = true
                                        };

        ca.HttpContext.Response.Cookies.Delete(key, options);
    }

Я не уверен, куда идти дальше.Заранее благодарим за любую помощь.

С наилучшими пожеланиями, Джимми

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...