Аутентификация asp.net на Nokia e5-00 - PullRequest
0 голосов
/ 26 июля 2011

Я пытаюсь войти, используя аутентификацию asp.net на устройстве nokia e5-00. Успешное выполнение входа в систему под управлением explorer, firefox, android и т. Д. Но в устройстве nokia HttpContext.Current.User.Identity.IsAuthenticated имеет значение false, хотя аутентификация прошла успешно.
Вот мой метод входа в систему:

public static void Login(User user)
        {
            HttpResponse Response = HttpContext.Current.Response;
            HttpRequest Request = HttpContext.Current.Request;

            FormsAuthenticationTicket ticket = new FormsAuthenticationTicket(1,
                user.Id.ToString(), DateTime.Now, DateTime.Now.AddHours(12), true,
                user.Id.ToString());

            string data = FormsAuthentication.Encrypt(ticket);
            HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, data);
            cookie.Expires = ticket.Expiration;

            Response.Cookies.Add(cookie);

            string redirectUrl = UserPages.Home;
            Response.Redirect(redirectUrl, false);
        }

Позже, на странице aspx, когда я пытаюсь получить пользователя, HttpContext.Current.User.Identity.IsAuthenticated все еще ложно.

Но во всех других браузерах IsAuthenticated имеет значение true, и все в порядке.

Такое поведение наблюдается во всех устройствах nokia. После проверки я вижу cookie, хранящиеся в nokia, но IsAuthenticated по-прежнему имеет значение false.

Что может вызвать эту проблему? Что не так с устройствами nokia ??

1 Ответ

0 голосов
/ 28 июля 2011

Я действительно не знаю, в чем была проблема, но вот как я ее решил:

Вместо использования моего public static void Login(User user) я использовал:

FormsAuthentication.RedirectFromLoginPage(user.Id.ToString(), true);

Опять же, я не уверен, в чем разница или почему это работает, в то время как мой оригинальный метод не работает.

Если у кого-нибудь есть ответ, я буду рад узнать.

Спасибо.

...