Чтение данных из заголовка ответа NSURLConnection - PullRequest
30 голосов
/ 08 июня 2011

Как я могу прочитать данные из заголовка, отправленного в ответе сервера. Я использую NSURLConnection для отправки запроса.

Ответы [ 2 ]

74 голосов
/ 08 июня 2011

Если URL-адрес является URL-адресом HTTP, то NSURLResponse, который вы получите в методе -connection:didReceiveResponse: делегата вашего соединения (или другим способом), будет NSHTTPURLResponse, который имеет -allHeaderFields метод, позволяющий получить доступ к заголовкам.

NSURLResponse* response = // the response, from somewhere
NSDictionary* headers = [(NSHTTPURLResponse *)response allHeaderFields];
// now query `headers` for the header you want
3 голосов
/ 24 января 2017

В моем случае

    NSHTTPURLResponse *response = ((NSHTTPURLResponse *)[task response]);
    NSDictionary *headers = [response allHeaderFields];

Хороший подход

    NSHTTPURLResponse *httpResponse = (NSHTTPURLResponse*)[task response];
    if ([httpResponse respondsToSelector:@selector(allHeaderFields)]) {
         NSDictionary *dictionary = [httpResponse allHeaderFields];
         NSLog(@"%@", [dictionary description]);
    }
...