目录
一、协议简介
HTTP协议:Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于万维网(WWW:World Wide Web )服务器与本地浏览器之间传输超文本的传送协议。
HTTP是一个属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。HTTP协议工作于客户端-服务端架构为上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据接收到的请求后,向客户端发送响应信息。
客户端 ---->>> 通过制定的访问地址获取(或上传)服务器的资源(文件等)---->>>服务器
客户端 <<<---- 使用http协议的通信<<<----服务器
二、http协议特性
1、基于TCP/IP协议之上的应用层协议
2、基于请求(响应模式)
HTTP协议规定,请求从客户端发出,最后服务器端响应该请求并 返回。
换句话说,肯定是先从客户端开始建立通信的,服务器端在没有 接收到请求之前不会发送响应
客户端A ----->>> 发送请求 ----->>>> 服务器B ------>>>回复请求------->>>>客户端A
3、无状态保存
HTTP是一种不保存状态,即无状态(stateless)协议:自身不对请求和响应之间的通信状态进行保存。也就是说在HTTP这个 级别,协议对于发送过的请求或响应都不做持久化处理。
使用HTTP协议,每当有新的请求发送时,就会有对应的新响应产 生。
协议本身并不保留之前一切的请求或响应报文的信息。这是为了更快地处理大量事务,确保协议的可伸缩性。
4、无连接
无连接:限制每次连接只处理一个请求。
服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
三、http请求协议与响应协议
- 请求协议:浏览器发送数据到服务器需要遵循的协议
- 响应协议:服务器发送数据到浏览器需要遵循的协议
- HTTP报文:用于HTTP协议交互的信,本身是由度哦行数据构成的字(文本)
- 请求报文:请求端(客户端)的HTTP报文
- 响应报文:响应端(服务器端)的HTTP报文
1、请求协议
请求方式: get与post请求
GET提交的数据会放在URL之后,以?分割URL和传输数据,参数之间以&相连,如EditBook?name=test1&id=123456. POST方法是把提交的数据放在HTTP包的请求体中.
GET提交的数据大小有限制(因为浏览器对URL的长度有限制),而POST方法提交的数据没有限制.
GET与POST请求在服务端获取请求数据方式不同。
2、响应协议
响应状态码