1. 对URL的认识:
URL的全称是Uniform Resource Locator ( 统一资源定位符 )。
URL的基本格式=协议:// 主机地址 // 路径。 不同的协议,代表不同的资源查找方式,资源传输方式。
2. http协议的特点即好处:
因为http协议简单,所以http服务器的程序规模小,而通信速度很快。
HTTP允许传输任意类型的数据。
HTTP0.9和HTTP1.0使用非持续连接。限制每次连接之处理一个请求,服务器对客户端的请求作出响应后马上断开连接,这种方式可以节省传输时间。
3.IOS中发送HTTP请求的方案:
1)苹果原生
NSURLConnection: 用法简单,最古老最经典最直接的一种方案。
NSURLSession: IOS7新出的技术,功能比NSURLConnection更加强大。
CFNetwork: NSURL的底层,纯C语言。
2)第三方框架
ASIHttpRequest: 外号,“HTTP终结者”,功能及其强大,但是已经停止更新。
AFNetworking: 简单易用,提供了基本够用的常用功能,维护和使用者多。
MKNetworkKit: 简单易用,产自印度,维护和使用者表较少。
4.HTTP通信过程
1)请求
HTTP协议规定,1个完整的由客户端发给服务器的HTTP请求中包含以下内容:
请求行: 包含了请求方法、请求资源、HTTP协议版本
GET /MJServer/resources/images/1.jpg HTTP/1.1
请求头:包含了对客户端的环境描述,客户端请求的主机地址等信息。
Host: 192.168.1.105:8080 // 客户端想访问的服务器主机地址
User-Agent: Mozilla/5.0(Macintosh; Intel Mac OS X 10.9) Firefox/30.0
// 客户端的类型,客户端的软件环境
Accept: text/html,*/* // 客户端所能接收的数据类型
Accept-Language: zh-cn //客户端的语言环境
Accept-Encoding: gzip //客户端支持的数据压缩格式
请求体:客户端发给服务器的具体数据,比如文件数据。
HTTP/1.1 200 OK
Server:Apache-Coyote/1.1 // 服务器的类型
Content-Type: image/jpeg // 返回数据的类型
Content-Length: 56811 // 返回数据的长度
Date: Mon, 23 Jun2014 12:54:52 GMT // 响应的时间