извлечь данные из какао http получить запрос - PullRequest
3 голосов
/ 01 апреля 2009

Я реализовал следующий код:

NSURL *url = [ NSURL URLWithString:[ NSString stringWithFormat: @"http://www.google.com/search?q=%@", query ] ];
NSURLRequest *request = [ NSURLRequest requestWithURL: url ];

Я хочу извлечь тело из того, что я получаю обратно из URL выше. Я попытался:

NSData *data = [request HTTPBody];

Переменная data не возвращает никаких данных? Собираюсь ли я извлечь данные из запроса правильным способом?

Спасибо!

Ответы [ 3 ]

6 голосов
/ 01 апреля 2009

Если вы просто пытаетесь получить веб-страницу, вы можете использовать это.

NSURL *url = [ NSURL URLWithString: [ NSString stringWithFormat: @"http://www.google.com"] ]; 
NSString *test = [NSString stringWithContentsOfURL:url];

Если вы действительно хотите преобразовать данные из NSData, вы можете использовать это:

NSString *myString = [[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding];
3 голосов
/ 01 апреля 2009

NSURLRequest просто определяет запрос - он ничего не делает сам по себе. Чтобы фактически сделать запрос, вам нужно передать запрос на NSURLConnection .

Кроме того, как указано в документации , HTTPBody - это данные, отправляемые с запросом, а не тело ответа.

1 голос
/ 29 июня 2010

На www.eigo.co.uk есть статья, в которой точно показано, как выполнить запрос и получить ответ в виде строковой переменной, но фрагмент кода, который вам нужен ...

NSString * strResult = [[NSString alloc] initWithData:oResponseData encoding:NSUTF8StringEncoding];

Проверьте статью здесь http://www.eigo.co.uk/iPhone-Submitting-HTTP-Requests.aspx

...