异步:
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;
第二段是同步请求
,~// 初始化请求
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];