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

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

Разработчик

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

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

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

NSURLSessionDelegate

NSURLSessionDelegate протокол описывает методы это NSURLSession объекты обращаются к своим делегатам с просьбой обрабатывать события сеансового уровня. В дополнение к методам, определенным в этом протоколе, большинство делегатов должно также реализовать некоторых или все методы в NSURLSessionTaskDelegate, NSURLSessionDataDelegate, и NSURLSessionDownloadDelegate протоколы для обработки событий уровня задачи.

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


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

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


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


Swift

import Foundation

Objective C

@import Foundation;

Доступность


Доступный в OS X v10.9 и позже.
  • Говорит сеансу URL, что сеанс был лишен законной силы.

    Объявление

    Swift

    optional func URLSession(_ session: NSURLSession, didBecomeInvalidWithError error: NSError?)

    Objective C

    - (void)URLSession:(NSURLSession *)session didBecomeInvalidWithError:(NSError *)error

    Параметры

    session

    Лишенный законной силы объект сеанса.

    error

    Ошибка, вызвавшая аннулирование, или nil если аннулирование было явным.

    Обсуждение

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Учетные данные запросов от делегата в ответ на запрос аутентификации сеансового уровня от удаленного сервера.

    Объявление

    Swift

    optional func URLSession(_ session: NSURLSession, didReceiveChallenge challenge: NSURLAuthenticationChallenge, completionHandler completionHandler: (NSURLSessionAuthChallengeDisposition, NSURLCredential!) -> Void)

    Objective C

    - (void)URLSession:(NSURLSession *)session didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition disposition, NSURLCredential *credential))completionHandler

    Параметры

    session

    Сеанс, содержащий задачу, запросившую аутентификацию.

    challenge

    Объект, содержащий запрос на аутентификацию.

    completionHandler

    Обработчик, который должен вызвать Ваш метод делегата. Его параметры:

    • disposition— Одна из нескольких констант, описывающая, как должна быть обработана проблема.

    • credential— Учетные данные, которые должны использоваться для аутентификации, если расположение NSURLSessionAuthChallengeUseCredential, иначе NULL.

    Обсуждение

    Этот метод вызывают в двух ситуациях:

    • Когда удаленный сервер просит клиентские сертификаты или Диспетчер локальной сети Windows NT (NTLM), чтобы аутентификация, позволила Вашему приложению обеспечивать надлежащие учетные данные

    • Когда сеанс сначала устанавливает соединение с удаленным сервером, использующим SSL или TLS, чтобы позволить Вашему приложению проверять цепочку сертификата сервера

    Если Вы не реализуете этот метод, сеанс вызывает своего делегата URLSession:task:didReceiveChallenge:completionHandler: метод вместо этого.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

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

    Объявление

    Swift

    enum NSURLSessionAuthChallengeDisposition : Int { case UseCredential case PerformDefaultHandling case CancelAuthenticationChallenge case RejectProtectionSpace }

    Objective C

    typedef NS_ENUM (NSInteger, NSURLSessionAuthChallengeDisposition ) { NSURLSessionAuthChallengeUseCredential = 0, NSURLSessionAuthChallengePerformDefaultHandling = 1, NSURLSessionAuthChallengeCancelAuthenticationChallenge = 2, NSURLSessionAuthChallengeRejectProtectionSpace = 3, };

    Константы

    • UseCredential

      NSURLSessionAuthChallengeUseCredential

      Используйте указанные учетные данные, которые могут быть nil.

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

    • PerformDefaultHandling

      NSURLSessionAuthChallengePerformDefaultHandling

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

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

    • CancelAuthenticationChallenge

      NSURLSessionAuthChallengeCancelAuthenticationChallenge

      Отмените весь запрос. Предоставленный учетный параметр проигнорирован.

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

    • RejectProtectionSpace

      NSURLSessionAuthChallengeRejectProtectionSpace

      Отклоните эту проблему и вызовите метод делегата аутентификации снова со следующим пространством защиты аутентификации. Предоставленный учетный параметр проигнорирован.

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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