Проблема с Chrome Cookie - PullRequest
       1

Проблема с Chrome Cookie

1 голос
/ 30 декабря 2010

У меня есть следующий код c #, работающий на странице выхода через кнопку «выход». Работает нормально на ie и ff, но не на chrome. Проблема в том, что chrome не установит cookie. Значение не отображается вообще в заголовке ответа. Я прочитал некоторые отчеты с похожими проблемами в сети, но не было предложено правильное решение. Любая помощь приветствуется. Спасибо за ваше время. Вот код, который работает на странице:

public class LogOut : ExtendedControlBase
    {
        void RemoveCookie(string CookieName)
        {
            HttpCookie myCookie = new HttpCookie(CookieName);
            myCookie.Expires = DateTime.Now.AddDays(-100);
            Response.Cookies.Add(myCookie);
        }
        protected override void  OnInit(EventArgs e)
        {
            Session.Remove("SiteUserEmail");
            Session.Remove("SiteUserName");
            Session.Remove("siteUserId");
            Session.Remove("siteUserGroupId");
            RemoveCookie("u");
            Response.StatusCode = 301;
            Response.AddHeader("Location", "/");
            Response.Flush();
            Response.End();
        }   
    }

Ответы [ 2 ]

1 голос
/ 30 декабря 2010

Несколько предложений:

Попробуйте использовать что-то вроде Fiddler , чтобы увидеть, что именно происходит. Я предполагаю, что на самом деле ссылка 'logout' не работает в Chrome, как ожидалось.

Попробуйте установить заголовок cookie вручную:

Response.AddHeader("Set-Cookie", "u=; expires=Fri, 31-Dec-1999 23:59:59 GMT"); 

Попробуйте установить тестовые заголовки, чтобы проверить, действительно ли они подключены:

Response.AddHeader("X-Testing", "Testing"); 

Примечание: Я не пробовал. Я предполагаю, что установка произвольных заголовков будет работать в Asp.Net.

0 голосов
/ 30 декабря 2010

Я предполагаю, что это связано с установкой срока годности в прошлом.Вы пытались удалить myCookie.Expires = DateTime.Now.AddDays(-100);?Я полагаю, что он по-прежнему будет рассматриваться как файл cookie сеанса без этого значения, так как срок действия не будет установлен в будущем.

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