Ios NSURLConnection connectionWithRequest:delegate和sendAsynchronousRequest:queue:completionHandler之间的主要区别是什么?
我想知道这两个NSURLConnection协议或方法(或它们实际被调用的任何东西)的区别 我对Objective-C编程非常陌生,我正在尝试创建一个从网站加载数据的iOS应用程序。我注意到在我观看/阅读的教程中,当他们使用connectionWithRequest时,他们有其他方法,我认为这些方法是connectionWithRequest正常工作所需的方法。其中一个教程是。这些方法是:Ios NSURLConnection connectionWithRequest:delegate和sendAsynchronousRequest:queue:completionHandler之间的主要区别是什么?,ios,iphone,objective-c,Ios,Iphone,Objective C,我想知道这两个NSURLConnection协议或方法(或它们实际被调用的任何东西)的区别 我对Objective-C编程非常陌生,我正在尝试创建一个从网站加载数据的iOS应用程序。我注意到在我观看/阅读的教程中,当他们使用connectionWithRequest时,他们有其他方法,我认为这些方法是connectionWithRequest正常工作所需的方法。其中一个教程是。这些方法是: - (void)connection:(NSURLConnection *)connection didR
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response;
- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data;
举两个例子。关于这一点,我还有另一个问题:当调用或使用NSURLConnection connectionWithRequest:delegate时,是否会自动调用这些方法
我提到的两个NSURLConnection协议之间的具体区别是什么?使用哪个更好?我找到了一个很好的链接,让您了解NSURLConnection及其委托方法
主要区别在于不同类型的回调:
- 方法
使用委托,您必须实现-connectionWithRequest:delegate:
、didReceiveResponse
和其他使其有用的方法。这是更复杂的,但允许您处理安全认证、进度跟踪和类似的事情didReceiveData
- 方法
使用块完成,与委派相比,它要容易得多。它处理接收响应和附加正文数据,并简单地给出结果+sendAsynchronousRequest:queue:completionHandler:
NSURLSessions
URL加载机制,可以替代NSURLConnection