2010-07-14 6 views
0

J'ai une URL comme here. Quand je tape cela dans la barre d'adresse de Safari, je vois un résultat comme "Erreur" ou "OK". Alors, comment puis-je appeler correctement cette URL depuis mon code et obtenir ce résultat sous la forme d'une chaîne?Obtenir le contenu du service Web

Je l'ai essayé avec NSURLConnection, NSURLRequest et NSURLResponse mais mon objet de réponse est toujours nil.

Répondre

1

La "réponse" dans ces classes fait référence à la réponse de protocole (en-têtes HTTP, etc.), pas au contenu.

Pour obtenir le contenu, vous avez quelques options:

  1. Utilisation NSURLConnection en mode asynchrone: Using NSURLConnection
  2. Utilisation NSURLConnection en mode synchrone:

    // Error checks omitted 
    NSURL *URL = [NSURL URLwithString:@"http://www.myserver.com/myservice.php?param=foobar"]; 
    NSURLRequest *request = [NSURLRequest requestWithURL:URL]; 
    NSData *data = [NSURLConnection sendSynchronousRequest:request 
                returningResponse:nil 
                   error:nil]; 
    
  3. Utilisez [NSString stringWithContentsOfURL:]

    NSURL *URL = [NSURL URLwithString:@"http://www.myserver.com/myservice.php?param=foobar"]; 
    NSString *content = [NSString stringWithContentsOfURL:URL]; 
    

Bien sûr, vous devriez utiliser les options 2 et 3 seulement si votre contenu sera vraiment de petite taille, pour maintenir la réactivité.

+0

Merci beaucoup! Le numéro deux l'a fait pour moi. :) – flohei

+0

de rien. =) –

Questions connexes