Как прервать асинхронное http-соединение в iphone? - PullRequest
3 голосов
/ 28 сентября 2010

Я инициировал асинхронный http-вызов на сервер в viewcontroller, но иногда это занимает много времени.

Могу ли я поставить на него кнопку и затем прервать текущий http-вызов, когда пользователь нажал эту кнопку?и если бы это могло быть сделано, я хотел бы также реализовать эту функцию, когда пользователь выходит из текущего представления, как, перейдите обратно к его родительскому представлению.

Ответы [ 2 ]

2 голосов
/ 28 сентября 2010

Если вы используете NSURLConnection, просто сохраните объект соединения в ivar или свойстве, а затем вызовите cancel , если вы хотите отменить соединение.

Действие вашей кнопки должно выглядетькак то так:

- (IBAction)tapCancelButton:(id)sender {
    [self.connection cancel];
    self.connection = nil;
}
0 голосов
/ 28 сентября 2010

Да, вы можете прервать соединение NSURLC.Этот вопрос / ответ обсуждает, как это сделать правильно:

NSURLConnection по-прежнему вызывает делегат ПОСЛЕ вызова метода отмены

...