IOS程序之HTTP同步请求与异步请求问题解决

本文主要介绍的是通过代码实现HTTP同步请求与异步请求问题,来了解和学习IOS程序的开发,来看本文详解。
首页 新闻资讯 行业资讯 IOS程序之HTTP同步请求与异步请求问题解决

IOS程序HTTP同步请求与异步请求问题解决是本文要介绍的内容,内容不多,主要是通过代码实现同步和异步的请求,我们来看详细内容。

异步请求,

复制

 NSMutableData* buf = [[NSMutableData alloc] initWithLength:0];   NSURLConnection* connection = [[NSURLConnection alloc] initWithRequest:req delegate:self];    // 收到响应时, 会触发   - (void)connection:(NSURLConnection *)aConnection didReceiveResponse:(NSURLResponse *)aResponse;   // 你可以在里面判断返回结果, 或者处理返回的http头中的信息    // 每收到一次数据, 会调用一次   - (void)connection:(NSURLConnection *)aConn didReceiveData:(NSData *)data;   // 因此一般来说,是   - (void)connection:(NSURLConnection *)aConn didReceiveData:(NSData *)data   {       [buf appendData:data];  }  // 当然buffer就是前面initWithRequest时同时声明的.   // 网络错误时触发  - (void)connection:(NSURLConnection *)aConn didFailWithError:(NSError *)error;   // 全部数据接收完毕时触发   - (void)connectionDidFinishLoading:(NSURLConnection *)aConn;
  • 1.

  • 2.

  • 3.

  • 4.

  • 5.

  • 6.

  • 7.

  • 8.

  • 9.

  • 10.

  • 11.

  • 12.

  • 13.

  • 14.

  • 15.

  • 16.

  • 17.

同步请求

复制

// 初始化請求 NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];   // 設置URL  [request setURL:[NSURL URLWithString:urlStr]];  // 設置HTTP方法          [request setHTTPMethod:@"GET"];  // 發送同步請求, 這裡得returnData就是返回得數據楽          NSData *returnData = [NSURLConnection sendSynchronousRequest:request    returningResponse:nil error:nil];   // 釋放對象          [request release];
  • 1.

  • 2.

  • 3.

  • 4.

  • 5.

  • 6.

  • 7.

  • 8.

  • 9.

小结:IOS程序HTTP同步请求与异步请求问题解决的内容介绍完了,希望本文对你有所帮助!

26    2011-08-03 10:39:06    IOS程序 HTTP 请求