您的位置:首页 > 理论基础 > 计算机网络

ios HTTP协议的理解

2016-03-30 17:15 218 查看
一、URL (统一资源定位符)

1、URL就是资源的地址、位置,互联网上的每个资源都有一个唯一的URL

2、URL 基本格式 -> 协议:// 主机地址/路径

协议 : 不同的协议,代表不同资源的查找方式,资源传输方式

主机地址 : 存放资源的主机(服务器)的IP地址(域名)

路径 : 资源在主机(服务器)的具体位置(或路径)

二、URL 中常见的协议

1、HTTP(超文本传输协议,属于应用层)

访问的是远程的网络资源,网络开发中最常见的协议,格式是http://

2、 file

访问的是本地计算机上的资源,格式是file://

3、FTP

访问的共享主机的文件资源,格式是 ftp://
三、HTTP 协议

1、 简介

不管是移动客户端还是PC端,访问远程的网络资源经常使用HTTP协议

2、作用

规定服务器和客户端之间的数据传输格式

3、为什么选择HTTP协议(无状态、短链接)

短连接 : http协议是建立在tcp协议基础上,没当客户端需要发送获取数据请求的时候,http会通过tcp建立起一个到服务器的连接通道,当本次请求需要的数据完毕后,http会立即将tcp连接断开,这个过程是很短的。这种方式可以节省传输时间。

无状态: 客户端每次向服务器发起请求的时候,不是通过一个连接,而是每次都建立一个新的连接。如果是一个连接的话,服务器进程中就能保持住这个连接并且在内存中记住一些信息状态。而每次请求结束后,连接就关闭,相关的内容就释放了,所以记不住任何状态,成为无状态连接。

灵活 : 允许传输任意类型是数据

4、HTTP 的通信过程

请求 : 客户端向服务器发送数据请求

响应 : 服务器返回数据给客户端



请求过程

客户端向服务器发送数据请求必须包含以下内容:

( 1 ) 请求行 : 请求方式、请求资源路径、http协议版本等

( 2 ) 请求头 : 对客户端的环境描述(能接受的数据类型、客户端的语言环境等)、客户端请求的主机地址等信息。

( 3 ) 请求体 : 客户端发送给服务器的具体数据(例如文件数据等)

响应过程:

客户端向服务器发送请求,服务器应当做出响应,即返回数据给客户端。

( 1 ) 状态行 : http协议版本,状态码

( 2 ) 响应头 : 包含对服务器的描述,对返回数据的描述(服务器类型、返回数据的类型、数据长度)

( 3 ) 响应体(实体内容) : 服务器返回给客户端的具体数据

5、常见的状态码

200 -> 请求成功

404 -> 服务器无法找到客户端想要的资源

500 -> 服务器内部发生错误,无法完成请求

400 -> 客户端语法错误

四、请求方法

1、有PUT/DELETE/GET/POST等,最常见的就是GET和POST请求

2、GET请求

在请求URL后面以?的形式跟上发给服务器的参数,多个参数之间用&隔开。比如 :

http://ww.test.com/login?username=123&pwd=234&type=JSON

注意: 由于浏览器和服务器对URL长度有限制,因此在URL后面附带的参数是有限制的,通常不能超过1KB

3、POST请求

请求参数放在请求体中,安全性高,传递的数据量没有限制

4、GET和POST的选择

( 1 ) 涉及到数据量大的,例如传递文件(图片),用POST

( 2 ) 涉及到安全性的问题,建议用POST

( 3 ) 其他的都可以用get
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: