NSURLConnection
2016-07-26 本文已影响13人
Gzook
常用类
-
NSURL:请求地址
-
NSURLRequest:一个NSURLRequest对象就代表一个请求,它包含的信息有
-
一个NSURL对象
-
请求方法、请求头、请求体
-
请求超时
-
NSMutableURLRequest:NSURLRequest的子类
-
NSURLConnection
-
负责发送请求,建立客户端和服务器的连接
-
发送数据给服务器,并收集来自服务器的响应数据
NSURLConnection的使用步骤
- 创建一个NSURL对象,设置请求路径
- 传入NSURL创建一个NSURLRequest对象,设置请求头和请求体
- 使用NSURLConnection发送请求
GET方法的代码实现
//发送一个GET请求给服务器,GET不需要写请求体,直接拼接在URL上面
//1.请求路径
NSURL * url=[NSURL URLWithString:@"http://localhost/logo.php?userName=jredu&pwd=123&type=XML"];
//2.创建请求对象
NSURLRequest * request=[NSURLRequest requestWithURL:url];
//3.发送GET同步请求
//sendSynchronousRequest阻塞式的方法,等待服务器返回数据
NSHTTPURLResponse *response=nil;
NSError * error=nil;
NSData * data= [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
NSLog(@"%zd",data.length);
//4.解析服务器返回的数据(解析成字符串)
NSString * string= [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"%@",string);
//1.请求路径
NSURL * url=[NSURL URLWithString:@"http://localhost/logo.php?userName=jredu&pwd=123"];
//2.创建请求对象
NSURLRequest * request=[NSURLRequest requestWithURL:url];
//3.发送GET异步请求
//sendAsynchronousRequest,没有返回体
[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse * _Nullable response, NSData * _Nullable data, NSError * _Nullable connectionError) {
//请求完毕会来到这个block
NSLog(@"%zd",data.length);
//4.解析服务器返回的数据(解析成字符串)
NSString * string= [[NSString alloc]initWithData:data encoding:NSUTF8StringEncoding];
NSLog(@"%@",string);
}];
后台提供的接口文档
- 服务器的BaseURL
- 请求路径
- 请求参数