2010-02-10 33 views
0

我试图做两个NSURLRequests后彼此。第二个要求是基于第一个要求的结果。我的第一个请求工作正常。我已将委托设置为self,并且在请求完成时(在connectionDidFinishLoading方法中)通知我。做2个NSURLRequests后彼此

我现在的问题是,我该如何处理第二个请求,并在处理完成时得到通知?我是否必须创建第二个委托来处理我的请求,或者是否有其他更好的方法来处理这个问题?

感谢您的帮助。

回答

1

我过去所做的是将NSURLConnection委托的代码包装在并发NSOperation类中。这个抽象类负责设置和管理连接及其状态的所有工作,并且它的子类在连接完成时执行数据的实际工作。例如,超类调用子类覆盖的方法performWork:(NSData *)data,并为结果设置实例变量。您可以使用控制器类来管理NSOperationQueue中的对象,并在之前的操作完成时创建新的操作。通过这种方式,每个请求都是一个可管理的单元,请求不一定需要彼此了解,而且您不是复制并粘贴代码来管理每个连接。