NSURLRequest и целевое действие

Как начинающий разработчик iOS, я пытаюсь понять некоторые концепции, связанные с механизмами обратного вызова в iOS.

Моя модель отправляет HTTP-запросы через NSURLRequest к серверной службе отдыха. Модель имеет несколько методов, что соответствует методам в сервисе. NSURLRequest основан на шаблоне делегата, что означает, что я получаю общий обратный вызов для всех вызовов службы. Затем моя модель должна выяснить, к какому вызову службы относится обратный вызов, чтобы я мог отправить контроллеру соответствующее событие обновления. Это неудобно, так как я должен поддерживать состояние som в модели, чтобы помнить, какой вызов я делал в последний раз (что очень непрактично в случае параллелизма), или интерпретировать полезную нагрузку в ответе HTTP.

Я хотел бы, чтобы NSURLRequest поддерживал шаблон целевого действия, чтобы каждый из запросов мог решить, какой метод обратного вызова использовать. Это возможно? Я что-то упустил здесь?

Если целевое действие недоступно в фреймворке, каковы наилучшие методы решения этой проблемы?


person user928437    schedule 05.09.2011    source источник


Ответы (1)


Способ сделать это — использовать NSURLRequest с NSURLConnection. Если вы посмотрите документы для NSURLConnection вам скажут, что вам нужно реализовать методы обратного вызова в протоколе NSURLConnectionDelegate, и дадут вам подробную информацию.

Эта страница также указывает на несколько примеров с образцом кода.

Вы также можете ознакомиться с Руководство по программированию системы загрузки URL на сайте developer.apple.com, где вы найдете дополнительную информацию о том, как эти классы предназначены для использования.

person Mike Hay    schedule 05.09.2011