美文网首页
NSURLCredentialStorage官方文档阅读

NSURLCredentialStorage官方文档阅读

作者: AppleTTT | 来源:发表于2017-06-21 16:05 被阅读112次

    NSURLCredentialStorage

    Overview

    NSURLCredentialStorage是管理凭据存储的单例(共享对象)。

    Symbols

    Getting the Credential Storage
    • @property(class, readonly, strong) NSURLCredentialStorage *sharedCredentialStorage

      返回共享的URL证书存储仓库;

    Getting and Setting Default Credentials
    • - (NSURLCredential *)defaultCredentialForProtectionSpace:(NSURLProtectionSpace *)space

      返回指定保护空间的默认凭据。如果没有则返回nil;


    • - (void)setDefaultCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)space

      给指定保护空间的设置默认凭据,如果仓库在指定的保护空间中不包含凭据,那么此证书将被添加。

    Adding and Removing Credentials
    • - (void)removeCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)space

      从仓库中删除指定安全空间的指定证书;


    • - (void)removeCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)space options:(NSDictionary<NSString *,id> *)options

      使用给定的选项来从仓库中删除指定安全空间的指定证书;

      options:包含删除凭证时要考虑的选项的字典。只用当证书的persistence为NSURLCredentialPersistenceSynchronizable才会都用到此选项;当删除具有此策略的NSURLCredential对象时,所有包含此凭据的设备上的凭据都将被删除。


    • - (void)setCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)space

      给指定安全空间添加证书;如果已经存在相同用户名的证书,则替换掉

    Retrieving Credentials
    • @property(readonly, copy) NSDictionary<NSURLProtectionSpace *,NSDictionary<NSString *,NSURLCredential *> *> *allCredentials

      所有可用的安全空间的证书;
      字典有NSURLProtectionSpace对象的键和其对应的值;值也为字典,其中键是用户名字符串,值是相应的NSURLCredential对象。


    • - (NSDictionary<NSString *,NSURLCredential *> *)credentialsForProtectionSpace:(NSURLProtectionSpace *)space

      返回指定安全空间的所有证书组成的字典;

    Constants
    • NSString *const NSURLCredentialStorageRemoveSynchronizableCredentials

      相应的值是一个NSNumber对象,表示一个布尔值,指示是否应该删除包含NSURLCredentialPersistenceSynchronizable属性的凭据。
      如果密钥丢失或值为@NO,则不会尝试删除此凭证。

    Notifications
    • const NSNotificationName NSURLCredentialStorageChangedNotification

      当存储的凭据被更改时发送此通知。通知对象是NSURLCredentialStorage实例。 此通知不包含用户信息字典。

    Instance Methods

    这部分方法定义在NSURLSessionTaskAdditions分类总,苹果文档均没有解释,以下均是自己YY

    • - (void)getCredentialsForProtectionSpace:(NSURLProtectionSpace *)protectionSpace task:(NSURLSessionTask *)task completionHandler:(void (^)(NSDictionary<NSString *,NSURLCredential *> *credentials))completionHandler

      获取指定安全空间,指定任务里的所有证书,并在获取到后调用completionHandler;


    • - (void)getDefaultCredentialForProtectionSpace:(NSURLProtectionSpace *)space task:(NSURLSessionTask *)task completionHandler:(void (^)(NSURLCredential *credential))completionHandler

      获取指定安全空间,指定任务里默认证书,并在获取到后调用completionHandler;


    • - (void)removeCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)protectionSpace options:(NSDictionary<NSString *,id> *)options task:(NSURLSessionTask *)task

      根据指定options,移除指定空间,指定任务的指定证书


    • - (void)setCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)protectionSpace task:(NSURLSessionTask *)task

      给指定空间,指定任务添加指定的证书;


    • - (void)setDefaultCredential:(NSURLCredential *)credential forProtectionSpace:(NSURLProtectionSpace *)protectionSpace task:(NSURLSessionTask *)task

      给指定空间,指定任务添加指定的默认证书;

    相关文章

      网友评论

          本文标题:NSURLCredentialStorage官方文档阅读

          本文链接:https://www.haomeiwen.com/subject/zqltcxtx.html