关闭

iOS-URLconnection

46人阅读 评论(0) 收藏 举报

基础概念
//1.NSURLConnection的作用就是简化HTTP请求的过程,而且可以收集服务器返回的信息
//2.NSURLConnection使用步奏:
//a.创建请求的URL对象 //设置请求路径
//b.根据URL创建请求对象
//c.发送请求(通过NSURLConnection去发送请求)

//通过协议代理获取
-(void)test2{
//1.设置请求路径
NSURL* url = [NSURL URLWithString:@”http://www.1000phone.net:8088/app/iAppFree/api/limited.php?page=1&number=40“];
//2.创建请求对象
//如果不设置,默认GET
NSURLRequest* request = [NSURLRequest requestWithURL:url];
//3.发送请求
//a.创建连接对象
//参数1:需要发送的请求
//参数2:代理
NSURLConnection* connection = [[NSURLConnection alloc] initWithRequest:request delegate:self];
//b.发送请求
[connection start];
}
//当接收到服务器返回的响应信息(只包含状态行和响应头)的时候自动调用这个方法
- (void)connection:(NSURLConnection )connection didReceiveResponse:(NSURLResponse )response{
// NSLog(@”%@”,response);
//在这实例化可变的data
if (_mutData == nil) {
_mutData = [[NSMutableData alloc] init];
}
//清空原来的数据
_mutData.length = 0;
}
//当接收到服务器返回的数据(实体内容)的时候会调用这个方法
//
- (void)connection:(NSURLConnection )connection didReceiveData:(NSData )data{
//将数据存到_mdata中
[_mutData appendData:data];
NSLog(@”接收到数据”);
}
//当服务器将数据返回完后会调用的方法
- (void)connectionDidFinishLoading:(NSURLConnection *)connection{
//解析_mutData
// NSDictionary* dic = [NSJSONSerialization JSONObjectWithData:_mutData options:NSJSONReadingMutableContainers error:nil];
// NSLog(@”%@”,dic);
NSLog(@”数据传送完毕”);
}
//下载失败
- (void)connection:(NSURLConnection )connection didFailWithError:(NSError )error{
// NSLog(@”请求失败%@”,error);
}
//通过bolck获取服务器的信息
-(void)test1{
//1.设置请求路径
NSURL* url = [NSURL URLWithString:@”http://www.1000phone.net:8088/app/iAppFree/api/limited.php?page=1&number=4“];
//2.创建请求对象
//如果不设置,默认GET
NSURLRequest* request = [NSURLRequest requestWithURL:url];
//3.发送请求
//发送异步请求(请求)
//1.需要发送的请求
//2.参数3的bolck对应的任务需要添加到这个队列中
//3.请求完成后需要执行的block
[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse * _Nullable response, NSData * _Nullable data, NSError * _Nullable connectionError) {
//参数1:响应信息(不包含实体内容,包含状态行和响应头)
//参数2:实例内容(服务器返回给客户端的数据)
//参数3:错误信息
NSLog(@”%@%@%@”,response,data,connectionError);
//解析数据
NSDictionary* dict = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
NSLog(@”%@”,dict);
}];
}

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1832次
    • 积分:189
    • 等级:
    • 排名:千里之外
    • 原创:18篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档