美文网首页
NSProtocol(一)

NSProtocol(一)

作者: 夏天的风_song | 来源:发表于2017-04-27 13:53 被阅读0次

NSURLProtocol对象处理特定于协议的URL数据的加载。
NSURLProtocol类本身是一个抽象类,它提供用于处理具有特定URL方案的URL的基础结构。 您可以为应用程序支持的任何自定义协议或URL方案创建子类。


一、概述

应用程序不需要直接实例化一个NSURLProtocol
子类。 当下载开始时,系统创建适当的协议对象来处理相应的URL请求。 所有您需要做的是定义您的协议类,并在应用程序启动时间内调用register Class: class方法,以便系统知道您的协议。

注意
您不能在watchOS 2和更高版本中使用此类定义自定义URL方案和协议。

为了支持协议特定请求的定制,苹果鼓励我们用任何自定义的API来定义NSURLRequest 和NSMutable URLRequest。需要以这种方式扩展NSURLRequest和NSMutable URLRequest协议实现者可以通过使用NSURLProtocol的类方法来存储和检索协议特定的请求数据。 property For Key: in Request:set Property: for Key: in Request:

协议实现着的重要职责是NSURLResponse处理的每个请求创建一个NSURLResponse。协议实现者可能希望创建一个自定义的,可变的NSURLResponse类来提供特定于协议的信息。

二、相关的方法

1、创建协议对象

- init With Request: cached Response: client:初始化并返回协议对象。

2、注册和注销协议类

+ register Class:尝试注册NSURLProtocol
的子类,使其对URL加载系统可见。

+ unregister Class:注销NSURLProtocol的指定子类。

3、确定子类是否可以处理请求

+ can Init With Request:返回协议子类是否可以处理指定的请求。

4、获取和设置请求属性

+ property For Key: in Request:返回与指定的请求中指定的关键字关联的属性。

+ set Property: for Key: in Request:在指定的请求中设置与指定键相关联的属性。

+ remove Property For Key: in Request:删除在指定的请求中与指定键相关联的属性。

5、提供请求的规范版本

+ canonical Request For Request:返回指定请求的规范版本。

6、确定请求是否相当于缓存

+ request Is Cache Equivalent: to Request:返回两个请求是否等同于缓存目的。

7、启动和停止下载

- start Loading开始协议特定的请求加载。

- stop Loading停止协议特定的请求加载。

8、获取协议属性

cached Response接收者的缓存响应。

client接收者用来与URL加载系统通信的对象。

request接收方的请求。

9、初始化

- init With Task: cached Response: client:

10、实例属性

task

11、类型方法

[+ can Init With Task:}(https://translate.google.com/translate?hl=zh-CN&sl=en&u=https://developer.apple.com/reference/foundation/nsurlprotocol&prev=search)

ps:继承自NSObject

相关文章

  • NSProtocol(一)

    NSURLProtocol对象处理特定于协议的URL数据的加载。NSURLProtocol类本身是一个抽象类,它提...

  • NSProtocol(二)

    转载自NSURLProtocol iOS根本离不开网络——不论是从服务端读写数据、向系统分发计算任务,还是从云端加...

  • iOS 基础之NSProtocol认识及其用于组件化通信方式

    请原谅我的懒?,传送门走起~~~我的原文博客

  • 。一一,一,一,一。

    一,、

  • 一 一

    2018年6月22日 星期五 雨 一水一万物 一星一宇宙 一字一文章 一书一世界 一读一微笑 一赞一知音

  • 一 一

    杨德昌《一 一》,早年曾看过一遍。 婷婷短发,白净,蓝色衬衫,学生裙,黑皮鞋,白袜子,学习很好的中学女生。温柔,懂...

  • 一 一

    给自己无处安放的灵魂找到了家!简书,我的新写作时光!继续,在流年里拾荒,禅落一身的光!

  • 一.一

  • 一.一

    一节车厢,一只行囊,肯为当时一念疯狂。 一根点燃,一缕惆怅,不许未来一片迷茫。 一眼远看,一众不详,哪知各位一去何...

  • 一(一)

    我叫一,总有人喜欢在背后说我,因为很多时候我都是自己一个人。很多人都说我很孤单,看起来很可怜,但我觉得很奇怪,他们...

网友评论

      本文标题:NSProtocol(一)

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