Подтвердить что ты не робот

Получение заголовков HTTP через NSURLRequest/NSURLConnection в Cocoa

Я работал над выяснением того, как получать заголовки HTTP через запрос, сделанный с NSURLConnection. Обычно запрос выполняется с чем-то простым:

    NSURLConnection *connection = [[NSURLConnection alloc]
    initWithRequest:request
        delegate:self];

Единственный способ, который я лично нашел в многократной документации Apple для получения заголовков ответов, - это синхронный вызов, используя следующий метод класса NSURLConnection:

+ (NSData *)sendSynchronousRequest:(NSURLRequest *)request returningResponse:(NSURLResponse **)response error:(NSError **)error

Здесь я легко могу ссылаться на объект ответа типа NSURLResponse. Проблема здесь в том, что я не готов делать синхронные запросы через мобильное устройство, особенно с сетью с высокой задержкой, такой как EDGE. Возможно ли получить аналогичные результаты по умолчанию, асинхронное поведение NSURLConnection?

4b9b3361

Ответ 1

В деле делегирования соединения добавьте метод -connection:didReceiveResponse:. Если вы выполняете стандартный HTTP-запрос, объект NSURLResponse, который был передан, фактически будет объектом NSHTTPURLResponse и отвечает на сообщение -allHeaderFields. Это должно быть то, что вы ищете.