为了在 Objective C 中使用异步 http 请求,您需要将委托(delegate)设置为 NSURLConnection
。问题是我需要发出多个 http 请求,因此拥有相同的委托(delegate)(自身)是行不通的。
解决这个问题的最佳方法是什么?我应该为每个 http 请求创建一个新的委托(delegate)类吗?这些委托(delegate)只是 NSObject 吗?
最佳答案
您有几个选择。最常见的两个是:
为每个连接创建一个新类(是的,
NSObject
的子类)并将它们设置为委托(delegate) - 让它们在加载数据时执行您需要的任何逻辑将一个类设置为委托(delegate)并存储对所有
NSURLConnection
的引用。这样,当您的委托(delegate)调用- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data
时,您可以测试正在使用哪个NSURLConnection
(例如if ([connection == myConnection])
- 或您正在实现的任何委托(delegate)方法)
关于objective-c - 在 obj-c 中创建非 self 委托(delegate),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5751192/