【发布时间】:2011-05-18 17:43:53
【问题描述】:
我正在尝试使用 NSUrlConnections 创建类似于网络管理器的东西。 为此,我希望能够发送多个请求,但我也希望能够在响应到达时识别发出请求的客户端(委托)。 我创建了一个这样的 NSDictionary:
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:SERVER_TIMEOUT];
....
[clients setObject:client forKey:connection];
在“- (void)connectionDidFinishLoading:(NSURLConnection *)connection”中我有这样的东西:
client = (id<RTANetworkDelegate>)[clients objectForKey:connection];
[clients removeObjectForKey:connection];
网络管理器是所有连接的代理,我进行一些预处理,然后将(解析的)响应发送给正确的代理,该代理首先发送了请求。
不幸的是,NSMutableURLRequest 似乎无法设置为字典中的键,因为它没有 copyWithZone 方法,我收到错误:
-[NSURLConnection copyWithZone:]: 无法识别的选择器发送到 实例
任何帮助将不胜感激! 谢谢!
========================================
[编辑]同时我已经找到了这个:
http://blog.emmerinc.be/index.php/2009/03/15/multiple-async-nsurlconnections-example/
这似乎解决了我的问题。但我仍然不知道这是否是最好的解决方案。我想我会在这里发布它,因为它也可能对其他人有所帮助。
【问题讨论】:
标签: iphone