这篇文章主要介绍了iOS应用中发送HTTP的get请求以及HTTP异步请求的方法,代码为传统的Objective-C语言,说明都简单地融入于注释之中,需要的朋友可以参考下
Http get 请求
代码如下:
// 组合一个搜索字符串
NSString *urlStr = [NSString stringWithFormat:@"http://www.baidu.com/s?wd=%@", @"php"];
// 字符串转化为URL
NSURL *url = [NSURL URLWithString:urlStr];
// NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init];
// [request setURL:url];
// [request setHTTPMethod:@"POST"];
// [request setTimeoutInterval:60];
// [request setHTTPBody:_data];
// [request setValue:@"ttt" forHTTPHeaderField:@"cookies"];
// url转化为一个请求
NSURLRequest *request = [NSURLRequest requestWithURL:url];
// 状态请求
NSURLResponse *response;
// 链接一个请求
NSData *resultData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:nil];
// 返回数据转为字符串
NSData *dataString = [[NSString alloc] initWithData:resultData encoding:NSUTF8StringEncoding];
NSLog(@"%@", dataString);
// 解析json吧
Http异步请求
代码如下:
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view.
_data = [[NSMutableData alloc] init];
// 组合一个搜索字符串
NSString *urlStr = [NSString stringWithFormat:@"http://www.baidu.com/s?wd=%@", @"php"];
NSURL *url = [NSURL URLWithString:urlStr];
NSURLRequest *request = [NSURLRequest requestWithURL:url];
//发起请求,定义代理
[NSURLConnection connectionWithRequest:request delegate:self];
}
// 分批返回数据
- (void)connection:(NSURLConnection *) connection didReceiveData:(NSData *)data {
[_data appendData:data];
NSLog(@"%@", _data);
}
// 数据完全返回完毕
- (void)connectionDidFinishLoading:(NSURLConnection *)connection {
NSString *dataString = [[NSString alloc] initWithData:_data encoding:NSUTF8StringEncoding];
NSLog(@"%@", dataString);
}
沃梦达教程
本文标题为:iOS应用中发送HTTP的get请求以及HTTP异步请求的方法


猜你喜欢
- SurfaceView播放视频发送弹幕并实现滚动歌词 2023-01-02
- Flutter实现底部和顶部导航栏 2022-08-31
- 作为iOS开发,这道面试题你能答出来,说明你基础很OK! 2023-09-14
- Android studio实现动态背景页面 2023-05-23
- Android实现监听音量的变化 2023-03-30
- 详解flutter engine 那些没被释放的东西 2022-12-04
- 最好用的ios数据恢复软件:PhoneRescue for Mac 2023-09-14
- Android MaterialButton使用实例详解(告别shape、selector) 2023-06-16
- iOS 对当前webView进行截屏的方法 2023-03-01
- Android实现轮询的三种方式 2023-02-17