NSURLConnection не выдает ошибку при отключенном интернет-соединении? - PullRequest
1 голос
/ 22 марта 2012

Мне просто интересно узнать код, приведенный ниже ... когда я отключил свое интернет-соединение и запустил его, я ожидал, что в журнале консоли появится сообщение "Ошибка подключения". Кто-нибудь может объяснить, почему я не? Спасибо.

NSString *urlString = [NSString stringWithFormat:@"http://www.myurl.com/RSS/feed.xml"];

NSURL *serviceURL = [NSURL URLWithString:urlString];

//Create the request
NSURLRequest *request = [NSURLRequest requestWithURL:serviceURL cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:30];

//Create the connection and send the request
NSURLConnection *connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];


//Make sure the connection is good
if (connection) {
    //instantiate the responseData structure to store the response
    self.responseData = [NSMutableData data];

}
else {
    NSLog(@"Connection failed");
}

Ответы [ 2 ]

1 голос
/ 22 марта 2012

Вы хотите проверить, не установилось ли само соединение, а не создать объект соединения, используйте делегат, например, так:

-(void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error{
        NSLog("Oh noes D=");
}
1 голос
/ 22 марта 2012

Вы на самом деле еще не пытались сделать запрос. if (connection) не проверяет, был ли запрос успешным, он только проверяет, удалось ли вам создать объект, представляющий соединение. Вам все еще нужно вызвать один из методов, чтобы сделать запрос. Подробнее см. в документации .

...