在iOS中发送Http请求的话,有很多方式可以选择,我在这里介绍几个常见的:
1、苹果自带的API
1)、Core Foundation框架中的CFNetwork API:纯C语言的API,性能高
2)、Foundation框架中的NSURLConnection API:Object-C的API,简单易用,性能也可以。
2、第三方的开源框架
1)、AFNetworking
2)、ASIHttpRequest
下面我们主要说明一下NSURLConnection的使用。
HTTP的主要请求方式有两种,GET请求与POST请求,下面我们先演示GET请求。
在IOS 中最好发送一个异步请求,不要发送同步请求;IOS 程序启动后,系统会默认创建一个主线程,也称为UI线程,主要用于渲染UI界面,处理UI界面与用户之间的交互。如处理用户的点击,触摸,文本输入事件等。所谓异步请求,就是在后台线程发送请求,不在主线程发送请求,一般情况下,客户端发送请求后,需要等待服务器的数据返回,如果服务器处理速度比较慢或者网速慢的话,可能要等待很长事件,这时如果你发送同步请求的话(即通过主线程发送请求)会造成主线程阻塞,出现卡机现象,给用户带来不好的体验。
1、发送异步的GET请求
利用NSURLConnection发送异步请求代码如下:
self.data=[[NSMutableData alloc] initWithLength:0];
//请求地址