Кто-нибудь знает, в каких ситуациях инициализация NSURLConnection
возвращает ноль вместо созданного соединения.В документации говорится, что это возможно, но не указывается, когда это происходит.
Рассматриваемый метод / сообщение:
[[NSURLConnection alloc] initWithRequest:request delegate:self];
-
Согласно* Ссылка на класс NSURLConnection
:
Возвращаемое значение: URL-соединение для запроса URL.Возвращает nil, если соединение не может быть инициализировано.
Руководство по программированию системы загрузки URL-адресов говорит следующее:
Если NSURLConnection не может создать соединение для запроса, initWithRequest: делегат: возвращает ноль.
-
Хотя возможно, что этот метод возвращает ноль, я не могу придумать сценарий, который вызывает это.Я пробовал следующие сценарии:
URLRequest
с пустым URL: connection:didFailWithError:
метод делегата вызывается с "неподдерживаемым URL" в качестве ошибки. URLRequest
сневерный URL: connection:didFailWithError:
метод делегата вызывается с «неверным URL» в качестве ошибки. URLRequest
с несуществующим URL: connection:didFailWithError:
метод делегата вызывается с «Не удалось найти сервер с указанным именем хоста»«.как ошибка. - Допустимый запрос, но нет интернета:
connection:didFailWithError:
Метод делегата вызывается с "Интернет-соединение, похоже, отключено".как ошибка. - nil request: вызывает сбой.
Метод initWithRequest
вернул допустимое значение NSURLConnection
в каждом сценарии (кроме последнего) и вызвал connection:didFailWithError:
с соответствующей ошибкой.
Кто-нибудь смог выяснить, по какому сценарию возвращается nil?