这里使用ASIQueue或两个不同的ASIHTTPRequest实例更好

时间:2012-01-09 19:57:57

标签: ios ios4 ios5

在我的视图控制器中,我有两个UIScrollViews。一种是从服务器显示最新的新闻更新,另一种是从服务器显示一些图像。所以我必须为这些数据解析两个json提要。我正在使用ASIHTTPRequest作为网络服务。

所以在我的-viewWillAppear:方法中,我调用两个独立的ASIHTTPRequest

异步实例
-(void)viewWillAppear{

    call news JSON and parse
    call image JSOn and parse

    process news Data and display the data in UI
    process image Data and display
}

那么在这里使用ASIQueue或两个ASIHTTPRequest的不同实例会更好吗?

2 个答案:

答案 0 :(得分:0)

如果您希望单独跟踪每个请求的进度,我建议使用ASINetworkQueue而不是两个ASIHTTPRequest

答案 1 :(得分:0)

对于viewWillAppear:,您的伪代码似乎都是程序化的。所以我要说使用ASINetworkQueue并将请求的完成处理程序设置为一个函数,该函数将执行相应的显示调用:

- (void)viewWillAppear
{
    // init news ASIHTTPRequest (set completion handler to newsDownloaded:)
    // init image ASIHTTPRequest (set completion handler to imagesDownloaded:)
    // add both of the requests to [ASINetworkQueue sharedQueue]
}

- (void)newsDownloaded:(ASIHTTPRequest *)request
{
    // parse news JSON
    // process news Data and display the data in UI
}

- (void)imagesDownloaded:(ASIHTTPRequest *)request
{
    // parse image JSON
    // process image Data and display
}

或者,您可以在代码块中编写解析和处理代码,而不是使用方法,并在ASIHTTPRequests上设置completionBlock