plus how habilitar google enable como chrome celular iphone objective-c cookies www-mechanize

iphone - how - habilitar cookies en ios 12



Administrar cookies HTTP en iPhone (3)

La respuesta de @ zonble solo funciona en mi servidor local; Si el servidor no se ejecuta localmente, el encabezado "Set-Cookie" no se encuentra en NSDictionary * fields = [HTTPResponse allHeaderFields];

Finalmente encontré que la solución de @benzado funciona bien. También vea: iphone nsurlconnection lee las cookies @Tal Bereznitskey''s answer.

Quiero portar una aplicación de Python que use mecanize para el iPhone. Esta aplicación necesita iniciar sesión en una página web y usar la cookie del sitio para ir a otras páginas en ese sitio para obtener algunos datos.

Con mi aplicación de Python estaba usando mechanize para la gestión automática de cookies. ¿Hay algo similar para Objective C que sea portátil para el iPhone?

Gracias por cualquier ayuda.


Puede usar la clase NSURLConnection para realizar una solicitud HTTP para iniciar sesión en el sitio web y recuperar la cookie. Para realizar una solicitud, simplemente cree una instancia de NSURLConnection y asígnele un objeto delegado.

NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com/"]]; NSURLConnection *connection = [NSURLConnection connectionWithRequest:request delegate:self];

Luego, implementa un método delegado.

- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response { NSHTTPURLResponse *HTTPResponse = (NSHTTPURLResponse *)response; NSDictionary *fields = [HTTPResponse allHeaderFields]; NSString *cookie = [fields valueForKey:@"Set-Cookie"]; // It is your cookie }

Conserva o copia la cadena de cookies. Cuando desee realizar otra solicitud, agréguela a su encabezado HTTP de su instancia de NSURLRequest.

NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:@"http://www.google.com/"]]; [request addValue:cookie forHTTPHeaderField:@"Cookie"];


NSURLConnection le ofrece la administración de cookies de forma gratuita. De la guía de programación del sistema de carga de URL :

El sistema de carga de URL envía automáticamente cualquier cookie almacenada apropiada para una solicitud de NSURL. a menos que la solicitud especifique que no se envíen cookies. Del mismo modo, las cookies devueltas en NSURLResponse se aceptan de acuerdo con la política actual de aceptación de cookies.