Tengo una aplicación iOS donde estoy cargando contenido html dentro de una vista web. El html es una página de inicio de sesión donde las credenciales del usuario se envían al servidor a través de ajax y se recibe una respuesta de autenticación de éxito/falla. Ahora, la respuesta contiene una cookie (en el campo Set-Cookie
cabecera) que puedo capturar en el lado de Objective-C como tal,No se puede leer la cookie en el navegador UIWebview con document.cookie
NSDictionary* headers = [(NSHTTPURLResponse *)response allHeaderFields];
NSString *strCookies = [headers valueForKey:@"Set-Cookie"];
NSLog(@"cookies -> %@", strCookies);
La misma respuesta también contiene una responseText
que utilizo en el navegador:
Ajax("/login", "POST", { onsuccess : function(response){
/* Do HTML stuff with response */ }
});
Ahora necesito la cookie para realizar más solicitudes ajax (después de la página de inicio de sesión). Sin embargo, la cookie no está configurada dentro del navegador webview. Buscando document.cookie
devuelve una cadena vacía. Puedo imprimir todos los encabezados de respuesta usando xhr.getAllResponseHeaders()
pero no puedo acceder al campo Set-Cookie
en el objeto xhr.
¿Cómo se puede establecer la cookie dentro de la vista web? ¿O no tengo más remedio que hacer todas las solicitudes de AJAX a través de Obj-C?
@fenderplayer fue contestada su pregunta? –