//请求方式
NSURLRequest *request = [[NSURLRequest alloc]initWithURL:url cachePolicy:NSURLRequestUseProtocolCachePolicy
[NSURLConnection connectionWithRequest:request delegate:self];
//接收方式
- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response
- (void)connection:(NSURLConnection *) connection didReceiveData:(NSData *)data
- (void)connectionDidFinishLoading:(NSURLConnection *)connection
多次发起http异步请求之后 我就不知道返回的是哪一次的请求数据了,因为是异步的 所以返回顺序是乱的把 我有一个同事说NSURLConnection已经封装好了顺序的 发起异步请求的顺序是什么样的 那么接收顺序也会是什么样的 是这样么?
4 个解决方案
#1
为什么不使用NSURLConnection 的sendAsynchronousRequest 发送异步请求的 block回调。这样你就不必担心如何去判断哪个请求返回过来的数据了。因为各个请求的回调是在它们自己的block中来处理的
#2
[NSURLConnection sendAsynchronousRequest:request
queue:[NSOperationQueue mainQueue]
completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {
////////.to do
}];
#3
谢谢指导呀
#4
楼上的方法确实是 正解 .
另外 你同事 说的 如下 :
“ 发起异步请求的顺序是什么样的 那么接收顺序也会是什么样的 ” 这句话应该是不正确的 , 接收 的顺序 需要看 哪一个 请求 最先完成,最先完成的 请求当然 就会 最先 回调 。
另外 你同事 说的 如下 :
“ 发起异步请求的顺序是什么样的 那么接收顺序也会是什么样的 ” 这句话应该是不正确的 , 接收 的顺序 需要看 哪一个 请求 最先完成,最先完成的 请求当然 就会 最先 回调 。
#1
为什么不使用NSURLConnection 的sendAsynchronousRequest 发送异步请求的 block回调。这样你就不必担心如何去判断哪个请求返回过来的数据了。因为各个请求的回调是在它们自己的block中来处理的
#2
[NSURLConnection sendAsynchronousRequest:request
queue:[NSOperationQueue mainQueue]
completionHandler:^(NSURLResponse *response, NSData *data, NSError *error) {
////////.to do
}];
#3
谢谢指导呀
#4
楼上的方法确实是 正解 .
另外 你同事 说的 如下 :
“ 发起异步请求的顺序是什么样的 那么接收顺序也会是什么样的 ” 这句话应该是不正确的 , 接收 的顺序 需要看 哪一个 请求 最先完成,最先完成的 请求当然 就会 最先 回调 。
另外 你同事 说的 如下 :
“ 发起异步请求的顺序是什么样的 那么接收顺序也会是什么样的 ” 这句话应该是不正确的 , 接收 的顺序 需要看 哪一个 请求 最先完成,最先完成的 请求当然 就会 最先 回调 。