iOS http异步请求和https认证

异步请求和异步队列请求不太相似,同步请求和异步队列请求都是调用的NSURLConnection的静态方法,而异步请求需要实例化一个NSURLConnection对象,并通过NSURLConnectionDelegate,NSURLConnectionDataDelegate,NSURLConnectionDownloadDelegate三个委托实现 对请求声明周期中的各个事件进行回调。

  • NSURLConnectionDelegate:主要处理https等加密认证
  • NSURLConnectionDataDelegate: 请求成功,失败,获取数据,上传进度,缓存等委托
  • NSURLConnectionDownloadDelegate: 下载相关的委托,成功,失败,数据等等。

异步请求和同步请求与异步队列请求相比,可以实现耕地的功能,如上传下载的进度,安全认证,取消和暂停,数据流等等

普通http请求

普通http请求,使用NSURLConnection示例对象,发送request,通过NSURLConnectionDataDelegate获取数据和请求状态

https请求

https协议和http协议的区别就在于https在建立tcp连接之后,有一段相互认证的过程,

HTTPS:当客户端第一次发送请求的时候,服务器会返回一个包含公钥的受保护空间(也成为证书),当我们发送请求的时候,公钥会将请求加密再发送给服务器,服务器接到请求之后,用自带的私钥进行解密,如果正确再返回数据。这就是 HTTPS 的安全性所在

iOS http异步请求和https认证_第1张图片

https的认证过程,在NSURLConnection中使用NSURLConnectionDelegate中的委托完成,简单的说我们获取到保护控件的证书后,验证证书,并授信证书,就可以请求https资源了。

 

 

 

你可能感兴趣的:(iOS http异步请求和https认证)