23>IOS网络——————之网络基础

来源:互联网 发布:java项目收获与体会 编辑:程序博客网 时间:2024/05/16 06:41

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   //客户端支持的数据压缩格式

请求体:客户端发给服务器的具体数据,比如文件数据。


2)响应

HTTP协议规定:1个完整的HTTP响应中包含以下内容
状态行:包含了HTTP协议版本状态码状态英文名称

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 //响应的时间

实体内容服务器返回给客户端的具体数据,比如文件数据


0 0
原创粉丝点击