Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы основы ссылка на протокол NSURLDownloadDelegate

Опции
Развертывание Target:

На этой странице
Язык:

NSURLDownloadDelegate

NSURLDownloadDelegate протокол определяет методы, позволяющие объекту получить информационные обратные вызовы об асинхронной загрузке URL-запроса загрузки. Другие методы делегата предоставляют услуги, позволяющие делегату настраивать процесс выполнения асинхронной загрузки URL.

Обратите внимание на то, что эти методы делегата вызовут на потоке, запустившем асинхронную работу загрузки для связанного NSURLDownload объект.

  • A downloadDidBegin: сообщение будет отправлено делегату непосредственно после запуска загрузки.

  • Нуль или больше download:willSendRequest:redirectResponse: сообщения будут отправлены делегату, прежде чем дальнейшие сообщения будут отправлены, если определено, что загрузка должна перенаправить к новому расположению. Делегат может позволить перенаправление, изменить место назначения или отклонить перенаправление.

  • Нуль или больше download:didReceiveAuthenticationChallenge: сообщения будут отправлены делегату, если будет необходимо аутентифицировать для загрузки запроса, и NSURLDownload уже не имеет аутентифицируемых учетных данных.

  • Нуль или больше download:didCancelAuthenticationChallenge: если NSURLDownload отменит запрос аутентификации вследствие обнаружения с ошибкой реализации протокола, сообщения будут отправлены делегату.

  • Нуль или больше download:didReceiveResponse: сообщения будут отправлены делегату прежде, чем получить a download:didReceiveDataOfLength: сообщение. Единственный случай, где download:didReceiveResponse: не отправляется делегату, когда реализация протокола встречается с ошибкой, прежде чем мог быть создан ответ.

  • Нуль или больше download:didReceiveDataOfLength: сообщения будут отправлены прежде downloadDidFinish: или download:didFailWithError: отправляется делегату.

  • Нуль или один download:decideDestinationWithSuggestedFilename: когда достаточная информация будет получена для определения предложенного имени файла для загруженного файла, будет отправлен делегату. Делегат не получит это сообщение если setDestination:allowOverwrite: был уже отправлен в экземпляр NSURLDownload.

  • A download:didCreateDestination: когда экземпляр NSURLDownload создаст файл на диске, сообщение будет отправлено делегату.

  • Если NSURLDownload решит, что загруженный файл находится в формате, который это в состоянии декодировать (Макбинэри, Binhex или gzip), то делегат получит a download:shouldDecodeSourceDataOfMIMEType:. Делегат должен возвратиться YEStrue декодировать данные, NOfalse иначе.

  • Если экземпляр NSURLDownload не получает a cancel сообщение, делегат получит один и только один downloadDidFinish: или download:didFailWithError: сообщение, но никогда оба. Кроме того, один раз любое из этих сообщений отправляются, делегат не получит дальнейших сообщений для данного NSURLDownload.

Наследование


Не применимый

Соответствует


Оператор импорта


Swift

import Foundation

Objective C

@import Foundation;

Доступность


Доступный в OS X v10.7 и позже.
  • Отправленный, чтобы определить, в состоянии ли делегат реагировать на форму пространства защиты аутентификации. (требуемый)

    Объявление

    Swift

    optional func download(_ download: NSURLDownload, canAuthenticateAgainstProtectionSpace protectionSpace: NSURLProtectionSpace) -> Bool

    Objective C

    - (BOOL)download:(NSURLDownload *)download canAuthenticateAgainstProtectionSpace:(NSURLProtectionSpace *)protectionSpace

    Параметры

    download

    Загрузка, отправляющая сообщение.

    protectionSpace

    Пространство защиты, генерирующее запрос аутентификации.

    Обсуждение

    Этот метод вызывают прежде download:didReceiveAuthenticationChallenge:, разрешение делегату проверить пространство защиты прежде, чем попытаться аутентифицировать против него. Путем возврата YEStrue, делегат указывает, что это может обработать форму аутентификации, к которой это делает в последующем вызове download:didReceiveAuthenticationChallenge:. Не реализация этого метода совпадает с возвратом NOfalse, когда используется обработка аутентификации по умолчанию.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Отправленный, если запрос аутентификации отменяется вследствие реализации протокола, встречающейся с ошибкой. (требуемый)

    Объявление

    Swift

    optional func download(_ download: NSURLDownload, didCancelAuthenticationChallenge challenge: NSURLAuthenticationChallenge)

    Objective C

    - (void)download:(NSURLDownload *)download didCancelAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge

    Параметры

    download

    URL загружает объект, отправляющий сообщение.

    challenge

    Запрос аутентификации, вызвавший объект загрузки отменить загрузку.

    Обсуждение

    Если делегат получит это сообщение, то загрузка перестанет работать, и делегат получит a download:didFailWithError: сообщение.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Отправленный, когда загрузка URL должна аутентифицировать проблему для загрузки запроса. (требуемый)

    Объявление

    Swift

    optional func download(_ download: NSURLDownload, didReceiveAuthenticationChallenge challenge: NSURLAuthenticationChallenge)

    Objective C

    - (void)download:(NSURLDownload *)download didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge

    Параметры

    download

    URL загружает объект, отправляющий сообщение.

    challenge

    Запрос аутентификации URL, который должен аутентифицироваться для загрузки запроса.

    Обсуждение

    Этот метод дает делегату возможность определить план действий, взятый для проблемы: обеспечьте учетные данные, продолжайте, не обеспечивая учетные данные или отмените запрос аутентификации и загрузку.

    Делегат может определить число предыдущих запросов аутентификации путем отправки сообщения previousFailureCount к challenge.

    Если предыдущее число отказов 0 и значение, возвращенное proposedCredential nil, делегат может создать новый объект NSURLCredential, предоставив информацию, определенную для типа учетных данных, и отправить a useCredential:forAuthenticationChallenge: сообщение к [challenge sender], передача учетных данных и challenge как параметры. Если proposedCredential не nil, значение является учетными данными от URL или совместно используемого учетного хранения, которое может быть предоставлено для пользователя как обратная связь.

    Делегат может решить отказаться от дальнейших попыток аутентификации в любое время путем отправки [challenge sender] a continueWithoutCredentialForAuthenticationChallenge: или a cancelAuthenticationChallenge: сообщение. Определенное действие является зависящим от реализации.

    Если делегат реализует этот метод, то загрузка приостановит до [challenge sender] отправляется одно из следующих сообщений: useCredential:forAuthenticationChallenge:, continueWithoutCredentialForAuthenticationChallenge: или cancelAuthenticationChallenge:.

    Если делегат не реализует этот метод, реализация по умолчанию используется. Если допустимые учетные данные для запроса предоставлены как часть URL или доступны от NSURLCredentialStorage [challenge sender] отправляется a useCredential:forAuthenticationChallenge: с учетными данными. Если проблема не имеет никаких учетных данных, или учетным данным не удается авторизовать доступ, то continueWithoutCredentialForAuthenticationChallenge: отправляется в [challenge sender] вместо этого.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Отправленный, чтобы определить, должен ли загрузчик URL консультироваться с учетным хранением для аутентификации загрузки. (требуемый)

    Объявление

    Swift

    optional func downloadShouldUseCredentialStorage(_ connection: NSURLDownload) -> Bool

    Objective C

    - (BOOL)downloadShouldUseCredentialStorage:(NSURLDownload *)connection

    Параметры

    connection

    Соединение, отправляющее сообщение.

    Обсуждение

    Этот метод вызывают, прежде чем любая попытка аутентифицировать предпринята. Путем возврата NOfalse, делегат говорит загрузке не консультироваться с учетным хранением и делает себя ответственным за обеспечение учетных данных для любых запросов аутентификации. Не реализация этого метода совпадает с returing YEStrue. Делегат свободен консультироваться с самим учетным хранением, когда оно получает a download:didReceiveAuthenticationChallenge: сообщение.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.6 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Делегат получает это сообщение когда download определил предложенное имя файла для загруженного файла. (требуемый)

    Объявление

    Swift

    optional func download(_ download: NSURLDownload, decideDestinationWithSuggestedFilename filename: String)

    Objective C

    - (void)download:(NSURLDownload *)download decideDestinationWithSuggestedFilename:(NSString *)filename

    Параметры

    download

    URL загружает объект, отправляющий сообщение.

    filename

    Предложенное имя файла для загрузки.

    Обсуждение

    Если загрузка была закодирована от кодирования, предложенное имя файла или получено из последнего компонента контура URL и типа MIME или. Если делегат хочет изменить путь, он должен отправить setDestination:allowOverwrite: к download.

    Специальные замечания

    Делегат не получит это сообщение если setDestination:allowOverwrite: был уже вызван для загрузки.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Отправленный сразу после того, как объект загрузки начинает загрузку. (требуемый)

    Объявление

    Swift

    optional func downloadDidBegin(_ download: NSURLDownload)

    Objective C

    - (void)downloadDidBegin:(NSURLDownload *)download

    Параметры

    download

    URL загружает объект, отправляющий сообщение.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Отправленный, когда создается целевой файл. (требуемый)

    Объявление

    Swift

    optional func download(_ download: NSURLDownload, didCreateDestination path: String)

    Objective C

    - (void)download:(NSURLDownload *)download didCreateDestination:(NSString *)path

    Параметры

    download

    URL загружает объект, отправляющий сообщение.

    path

    Путь к целевому файлу.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Отправленный, когда объект загрузки получил достаточные данные загрузки для построения объекта NSURLResponse для загрузки. (требуемый)

    Объявление

    Swift

    optional func download(_ download: NSURLDownload, didReceiveResponse response: NSURLResponse)

    Objective C

    - (void)download:(NSURLDownload *)download didReceiveResponse:(NSURLResponse *)response

    Параметры

    download

    URL загружает объект, отправляющий сообщение.

    response

    Объект ответа URL, полученный как часть загрузки. response является неизменным и не будет изменен после того, как этот метод вызывают.

    Обсуждение

    В некоторых редких случаях множественные ответы могут быть получены для единственной загрузки. В этом случае клиент должен предположить, что каждый новый ответ сбрасывает прогресс загрузки к 0 и должен проверить новый ответ на ожидаемую длину содержания.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Отправленный, поскольку объект загрузки получает данные инкрементно. (требуемый)

    Объявление

    Swift

    optional func download(_ download: NSURLDownload, didReceiveDataOfLength length: Int)

    Objective C

    - (void)download:(NSURLDownload *)download didReceiveDataOfLength:(NSUInteger)length

    Параметры

    download

    URL загружает объект, отправляющий сообщение.

    length

    Объем данных, полученный в этом инкременте загрузки, измеренной в байтах.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Отправленный, когда объект загрузки решает, что загруженный файл кодируется, чтобы запросить, должен ли автоматически декодироваться файл. (требуемый)

    Объявление

    Swift

    optional func download(_ download: NSURLDownload, shouldDecodeSourceDataOfMIMEType encodingType: String) -> Bool

    Objective C

    - (BOOL)download:(NSURLDownload *)download shouldDecodeSourceDataOfMIMEType:(NSString *)encodingType

    Параметры

    download

    URL загружает объект, отправляющий сообщение.

    encodingType

    Тип кодирования используемого загруженным файлом. Поддерживаемыми форматами кодировки является Макбинэри ("application/macbinary"), Binhex ("application/mac-binhex40") и gzip ("application/gzip").

    Возвращаемое значение

    YEStrue декодировать файл, NOfalse иначе.

    Специальные замечания

    Если файл был закодирован многократно, делегат может получить это сообщение несколько раз. Если загруженный файл не кодируется, этот метод не вызывают.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Отправленный, когда объект загрузки получил ответ от сервера после попытки возобновить загрузку. (требуемый)

    Объявление

    Swift

    optional func download(_ download: NSURLDownload, willResumeWithResponse response: NSURLResponse, fromByte startingByte: Int64)

    Objective C

    - (void)download:(NSURLDownload *)download willResumeWithResponse:(NSURLResponse *)response fromByte:(long long)startingByte

    Параметры

    download

    URL загружает объект, отправляющий сообщение.

    response

    Ответ URL, полученный от сервера в ответ на попытку возобновить загрузку.

    startingByte

    Расположение запуска возобновленных данных, в байтах.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.4 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Отправленный, когда объект загрузки решает, что должен изменить URLs, чтобы продолжать загружать запрос. (требуемый)

    Объявление

    Swift

    optional func download(_ download: NSURLDownload, willSendRequest request: NSURLRequest, redirectResponse redirectResponse: NSURLResponse?) -> NSURLRequest?

    Objective C

    - (NSURLRequest *)download:(NSURLDownload *)download willSendRequest:(NSURLRequest *)request redirectResponse:(NSURLResponse *)redirectResponse

    Параметры

    download

    URL загружает объект, отправляющий сообщение.

    request

    Предложенный перенаправленный запрос. Делегат должен проверить перенаправленный запрос, чтобы проверить, что он удовлетворяет свои потребности, и создайте копию с новыми атрибутами для возврата к соединению при необходимости.

    redirectResponse

    Ответ URL, вызвавший перенаправление. Может быть nil в случаях, куда этот метод не отправляется в результате включения делегата в обработке перенаправления.

    Возвращаемое значение

    Фактический URL-запрос для использования в свете ответа перенаправления. Делегат может скопировать и изменить request по мере необходимости для изменения его атрибутов возвратиться request неизмененный, или возврат nil.

    Обсуждение

    Если делегат хочет отменить перенаправление, оно должно вызвать download объект cancel метод. Также метод делегата может возвратиться nil отменять перенаправление и загрузку будет продолжать обрабатывать. Это имеет специальную уместность в случае где redirectResponse не nil. В этом случае любые данные, загружающиеся для загрузки, будут отправлены делегату, и делегат получит a downloadDidFinish: или download:didFailWithError: сообщение, как надлежащий.

    Специальные замечания

    Делегат может получить это сообщение в результате преобразования URL запроса к его канонической форме, или по специфичным для протокола причинам, таким как перенаправление HTTP. Реализация делегата должна быть подготовлена получить это сообщение многократно.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Отправленный, если загрузка перестала работать или если ошибка I/O происходит, когда файл записан в диск. (требуемый)

    Объявление

    Swift

    optional func download(_ download: NSURLDownload, didFailWithError error: NSError)

    Objective C

    - (void)download:(NSURLDownload *)download didFailWithError:(NSError *)error

    Параметры

    download

    URL загружает объект, отправляющий сообщение.

    error

    Ошибка, вызвавшая отказ загрузки.

    Обсуждение

    Любой частично загруженный файл будет удален.

    Специальные замечания

    Как только делегат получает это сообщение, оно не получит дальнейших сообщений для download.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.

  • Отправленный, когда объект загрузки завершил загрузку успешно и записал ее результаты в диск. (требуемый)

    Объявление

    Swift

    optional func downloadDidFinish(_ download: NSURLDownload)

    Objective C

    - (void)downloadDidFinish:(NSURLDownload *)download

    Параметры

    download

    URL загружает объект, отправляющий сообщение.

    Обсуждение

    Делегат не получит дальнейших сообщений для download.

    Оператор импорта

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

    Доступный в OS X v10.2 и позже.

    Доступный как часть неофициального протокола до OS X v10.7.