Estoy escribiendo una aplicación Asp.net MVC 2 que usa la Autenticación de formularios y actualmente estoy teniendo un problema con nuestra aplicación de iPhone con respecto a la autenticación/inicio de sesión en la web. Hemos desarrollado una aplicación de iPhone simple que utiliza el control UIWebView. En esta etapa, todo lo que hace la aplicación es navegar a nuestro sitio web Asp.Net. Simple, ¿verdad? El problema es que el usuario no puede pasar de la página de inicio de sesión. Los pasos de reproducción son:Asp.Net Autenticación de formularios al usar el iPhone UIWebView
- Abra la aplicación para iPhone.
- La aplicación navega a la página de inicio.
- el usuario no está autenticado, por lo que se le redirige a la pantalla/página de inicio de sesión
- El usuario ingresa el nombre de usuario y la contraseña correctos. clics enviar.
- en el lado del servidor, el usuario se autentica y se genera una cookie y se envía al cliente utilizando FormsAuthentication.GetAuthCookie.
- Los envíos del servidor se redireccionan para enviar al usuario a la página de inicio correcta.
Pero el usuario es redirigido a continuación VOLVER a la pantalla de inicio de sesión!
he hecho algunas extensa depuración en esto y lo que sí sé es:
La cookie está siendo enviado al cliente, y el cliente es el almacenamiento de la cookie. Verificado esto en el depurador de iPhone y también mediante el uso de Javsascript para mostrar datos de cookies en la página. La cookie se envía de vuelta al servidor. Verificado esto en el depurador de Visual Studio. Es la cookie correcta (es la misma que se configuró). La propiedad User.Identity.IsAuthenticated devuelve false por algún motivo, aunque la cookie de autenticación esté contenida en el objeto Request. He verificado que la aplicación de iPhone está configurada para aceptar cookies, y están en el cliente.
Aquí está lo gracioso: funciona bien si abre el navegador Safari en el iPhone y va directamente a nuestro sitio.
Tiene el mismo comportamiento en el iPad porque no pasa de la pantalla de inicio de sesión. Esto repros en los emuladores y en los dispositivos.
Este mismo sitio web ha sido probado con IE 7-8, Safari (para Windows), Blackberry, IEMobile 6.5, Phone 7 y funciona find. La única circunstancia en la que no funciona es UIWebView en la aplicación iPhone.
¿Ha logrado encontrar una solución a este problema? Estoy enfrentando el mismo problema ... :( –
Sí, logramos encontrar una solución. Le pediré al desarrollador que resolvió el problema que publique su solución, ya que él la entiende mejor que yo. –
Indique el solución ya que estoy enfrentando el mismo problema. Gracias. – Neal