2011-11-24 13 views
5

Soy DUMMY COMPLETO en ASIHTTPRequest. Acabo de descargar la biblioteca y la agregué a mi proyecto y ahora estoy tratando de entender los conceptos básicos de cómo trabajar con ella. He encontrado algunos ejemplos bastante buenos hereASIHTTPRequest for Dummies

Este pequeño tutorial consiste en cargar imágenes en un servidor. Lo intenté y las cosas parecen funcionar (pero estoy confundido con NSString devuelto por [request responseString], me devolvió el código HTML de una página web completa) pero me gustaría saber cómo descargar imágenes (o cualquier cosa cargada) de el servidor. Después de buscar un poco encontré this y no me dio respuestas, pero sí más preguntas, porque no está claro para mí. Déjenme enumular mis preguntas:

1) ¿Podrían darme un pequeño código que muestre cómo descargar datos (sin importar qué tipo de datos: imágenes, cadenas, números, etc.) de un servidor?

2) ¿Debería saber el código php del lado del servidor para poder trabajar con un servidor?

3) En caso afirmativo, ¿cómo sé el código php del servidor?

4) ¿Qué tan importante es si una solicitud es procesada por un script php o por cualquier otro medio?

5) ¿Cuál es el rol de responseString? ¿Está bien que me haya devuelto un gran código HTML?

6) La pregunta principal. ¿Hay un buen tutorial para ASIHTTPRequest? Algo así como "ASIHTTPRequest for Dummies"? Encontré documentación oficial here pero explica las cosas muy mal y simplemente no puedo encontrar ningún otro tutorial.

Se necesita urgentemente toda ayuda.

+5

nota: no aprendas ASI nunca :) Es un caballo muerto –

Respuesta

6

1) ¿Podría proporcionarme un pequeño fragmento de código que muestre cómo descargar datos (sin importar qué tipo de datos: imágenes, cadenas, números, etc.) de un servidor?

aquí se puede encontrar un ejemplo muy básico POST:

NSURL *url = [NSURL URLWithString:@"http://localhost/webroot/index.php/test/signUp"]; 

ASIFormDataRequest *request = [ASIFormDataRequest requestWithURL:url]; 
[request addPostValue:@"Raul" forKey:@"name"]; 
[request addPostValue:@"Hello World" forKey:@"message"]; 

[request setCompletionBlock:^{ 
    NSString *responseString = [request responseString]; 
    NSLog(@"Response: %@", responseString); 
}]; 
[request setFailedBlock:^{ 
    NSError *error = [request error]; 
    NSLog(@"Error: %@", error.localizedDescription); 
}]; 

[request startAsynchronous]; 

Utiliza bloques, de manera que wverything está muy bien embalada en común en una función y no tener que lidiar con los delegados y el resto . (source)

Si lo que desea es obtener una página, puede utilizar:

NSURL *url = [NSURL URLWithString:@"http://allseeing-i.com"]; 
ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url]; 
[request setCompletionBlock:^{ 
    NSString *responseString = [request responseString]; 
    NSLog(@"Response: %@", responseString); 
}]; 
[request setFailedBlock:^{ 
    NSError *error = [request error]; 
    NSLog(@"Error: %@", error.localizedDescription); 
}]; 

[Solicitud startAsynchronous];

2) ¿Debo saber el código php del lado del servidor para poder trabajar con un servidor?

absolutamente no es necesario.

3) En caso afirmativo, ¿cómo sé el código php del servidor?

N.A.

4) ¿Qué tan importante es si una solicitud es procesada por un script php o por cualquier otro medio?

el idioma en el que está escrito el servidor tampoco es relevante.

5) ¿Cuál es el papel de responseString? ¿Está bien que me haya devuelto un gran código HTML?

responseString contiene todos los datos que el servidor le envió como un NSString. Puede ser enorme ...

6) La pregunta principal. ¿Hay un buen tutorial para ASIHTTPRequest? Algo así como "ASIHTTPRequest for Dummies"? Encontré documentación oficial aquí, haga clic, pero explica las cosas muy mal y simplemente no puedo encontrar ningún otro tutorial.

No sé de un tutorial "para tontos" como usted dice; debe intentar y seguir los documentos en el sitio; pueden parecer complejos, pero en realidad no lo son.

En otra nota, probablemente ya la conozcas: development of ASIHTTP has been ceased. Si recién estás comenzando a aprender sobre esto, mejor pienses en considerar una alternativa. Mire la página vinculada para algunas alternativas.

+0

¿También copiaste el archivo PHP que el autor proporcionó y lo instaló en tu servidor web? ¿Cómo se ve el HTML que recibes (al menos parcialmente)? – sergio

+0

bien. También agregué otro fragmento de código para una solicitud GET ... espero que ayude ... – sergio