概念
- 协议
- 事先约定好的规则、标准。
- 计算机协议
- 计算机与计算机之间通讯要遵守的约定、规则、标准。
- HTTP协议
- 属于计算机通讯协议中的一种;
- HyperText Transfer Protocol 超文本传输协议;
- 每个请求只能请求服务器上的一个资源,服务器会根据请求生成对应响应数据包;
请求
-
浏览器发送给服务器的数据包,目的为了告诉服务器一些请求相关的通用数据;
-
请求方式
- GET:向服务器索取资源的请求类型;
- POST:向服务器提交(发送)数据的请求类型;
- 组成
- 头(Reuqest Headers)
- 请求首行
请求方式 资源路径 HTTP协议版本
- 请求的键值对
- HTTP定义好了标准;
- 请求首行
- 正文(GET没有正文,POST请求有正文)
- 提交到服务器的数据
- 格式
acc=admin&pwd=ad123
- 数据对象
- 头(Reuqest Headers)
响应
-
服务器发给浏览器的数据包,目的是为了服务器告诉给浏览器的一些响应相关的通用数据;
-
组成
- 头(Response Headers)
- 响应首行
HTTP版本 响应状态码
- 响应键值对
- HTTP定义好了标准;
- 响应首行
- 正文
- GET:请求的资源内容;
- POST:数据的处理结果;
- 头(Response Headers)
Http状态码
- HTTP状态码(英语:HTTP Status Code)是用以表示网页服务器超文本传输协议响应状态的3位数字代码。
- 常见状态码:
- 200 成功
- 404 请求资源没找到
- 请求资源的URL错误
- 服务器确实不存在请求资源
- 500 服务器错误
- 后端程序异常
缓存
- 从服务器获取到不常改动的资源后,存储到本地浏览器中,下一次要使用资源时,先从浏览器文件中查找,如果存在,则直接使用,不存在,再从服务器请求获取,从而减少请求次数,减少流量消耗,加快页面加载渲染速度,提高用户体验,减少服务器压力;
Http协议特点
- 简单快速
- 使用简单,仅需要提供请求的资源URL,则可发送Http请求;
- 传输速度较快;
- 灵活
- 支持各种超文本资源传输;
- 无连接
- 短连接
- 发送请求前建立连接,生成响应后,注销连接;
- 长连接
- 发送请求前建立连接,生成响应后,不会马上注销连接;
- 短连接
- 无状态
- 不具备报存用户状态;
- 比如:登录状态
- 不具备报存用户状态;
- 明文传输
- 数据不做加密处理,直接传输,容易被截包,导致数据泄密;
HTTP与HTTPs区别
- 端口号
- HTTP:80
- HTTPs:443
- 数据传输
- HTTP:数据以明文形式传输;
- HTTPS:数据以加密后的形式(密文)传输;
- 服务器身份认证
- HTTP不具备识别目标服务器是否正规合法的能力,HTTPS能够识别服务器是否正规合法;
- 响应速度
- HTTP协议的响应速度高于HTTPS(HTTP+TLS/SSL)协议;