官方文档的三种代理模式.

  The NSURLConnection class works in tandem with three formal protocols: NSURLConnectionDelegate,NSURLConnectionDataDelegate, and NSURLConnectionDownloadDelegate. To use these protocols, you write a class that conforms to them and implement any methods that are appropriate, then provide an instance of that class as the delegate when you create a connection object.

  1.The NSURLConnectionDelegate protocol is primarily used for credential handling, but also handles connection completion. Because it handles connection failure during data transfers, all connection delegates must typically implement this protocol.

  2.In addition, unless you’re using Newsstand Kit, your delegate must also conform to theNSURLConnectionDataDelegate protocol, because this protocol provides methods that the NSURLConnectionclass calls with progress information during an upload, with fragments of the response data during a download, and to provide a new upload body stream if the server’s response necessitates a second connection attempt—for example, if NSURLConnection must retry the request with different credentials.

  3.Finally, if you’re using Newsstand Kit, your delegate can conform to the NSURLConnectionDownloadDelegateprotocol. This protocol provides support for continuing interrupted file downloads and receiving a notification whenever a download finishes. This protocol is solely for use with NSURLConnection objects created using Newsstand Kit’s downloadWithDelegate: method.

 

posted on 2016-04-15 19:42  _zone  阅读(583)  评论(0编辑  收藏  举报