2010-04-20 16 views

Respuesta

5

De acuerdo con h4xxr y les remitiría a

http://allseeing-i.com/ASIHTTPRequest/

¿Qué es un lib fantástico que tiene robusta Métodos de solicitud HTTP para sincronización y asincronización completa con muestras de código.

+0

excelente enlace :) gracias, útil a veces :) – balexandre

2

Depende de los datos que está buscando. Algo tan simple como este es sincrónico, y es útil de vez en cuando:

NSURL *url = [NSURL URLWithString:@"http://someaddress.asp?somedatarequest=1"]; 
NSArray *dataArray = [NSArray arrayWithContentsOfURL:url]; 

(Equivalente también existe para Diccionarios)

En este caso, el sistema esperará una respuesta del someaddress.asp - por lo tanto, lo mejor es poner algo como esto en un hilo de fondo.

Si usted tiene control sobre el formato de los datos en el otro extremo, esto puede ser una forma rápida y fácil de obtener datos en una aplicación para el iPhone/iPad ...

Editar - sólo quería ¡declare lo obvio que típicamente asincrónico suele ser lo mejor! No esperar a consumir recursos del sistema, especialmente si el servidor remoto ha muerto, etc ... :)

+2

Recuerde que los métodos 'NSArray' y' NSDictionary' "ContentsOfURL:" requieren que el recurso de destino esté en formato plist. –

34
NSURLRequest * urlRequest = [NSURLRequest requestWithURL:aURL]; 
NSURLResponse * response = nil; 
NSError * error = nil; 
NSData * data = [NSURLConnection sendSynchronousRequest:urlRequest returningResponse:&response error:&error]; 
+0

Para mí, el problema con esto es que no se puede leer la respuesta mientras se descarga ... significa que no puedo romper la conexión después de analizar el interesante parte. Hacerlo con el asincrónico es un dolor en el culo si tengo que hacerlo varias veces. –