Получить контент веб-сервиса - PullRequest
0 голосов
/ 14 июля 2010

У меня есть URL вроде здесь .Когда я набираю это в адресной строке Safari, я вижу результат типа «Ошибка» или «ОК».

Итак, как мне правильно вызвать этот URL из моего кода и получить этот результат как строку?

Я пробовал это с NSURLConnection, NSURLRequest и NSURLResponse, но мой объект ответа всегда nil.

1 Ответ

1 голос
/ 15 июля 2010

«Ответ» в этих классах относится к ответу протокола (заголовки HTTP и т. Д.), А не к содержимому.

Чтобы получить контент, у вас есть несколько вариантов:

  1. Использовать NSURLConnection в асинхронном режиме: Используя NSURLConnection
  2. Использовать NSURLConnection в синхронном режиме:

    // 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. Использование [NSString stringWithContentsOfURL:]

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

Конечно, вы должны использовать опции 2 и 3 , только если ваш контент будет действительно небольшого размера, чтобы сохранить отзывчивость.

...