前端系列课程(4)-HTTP 协议

浏览器和服务器之间的通讯,最常用的通讯协议之一就是 HTTP 协议。HTTP(HyperText Transfer Protocol,超文本传输协议),互联网上应用最广泛的一种网络协议,用于定义 Web 浏览器与 Web 服务器之间交换数据的过程。

[ 特点 ] 基于请求 / 响应模型的协议。请求和响应必须成对出现,且先有请求后有响应。


HTTP 协议默认的端口是:80 。如,http://www.webpiece.cn:80

// 版本

HTTP/1.0,发送请求,创建一次连接,获得一个 Web 资源,连接断开。

HTTP/1.1,发送请求,创建一个连接,获得多个 Web 资源,连接断开。


前端系列课程(4)-HTTP 协议

http请求与响应过程

[ HTTP 事务 ] 一个完整的 http 请求是怎样一个过程呢? // 抓包工具:HttpWatch(仅支持 IE)

请求过程:浏览器向服务器发送一个包含命令和 URL 的请求报文;响应过程:当服务器接收到请求报文后,会进行一系列计算,然后,向浏览器返回一个响应报文,浏览器接收到响应报文会将报文的主体显示在浏览器上。

[ HTTP 报文 ] ~ 分为请求报文和响应报文,它们都是由三部分组成:头行、头部和主体。

HTTP 请求包括:请求行、请求头、请求体;

HTTP 响应包括:响应行、响应头、响应体。

请求报文


前端系列课程(4)-HTTP 协议

请求报文格式

[1] 请求行:HTTP 请求格式的第一行,格式:请求方式 资源路径 协议/版本

[ 请求方式 ] 协议规定了 7 种方式,在使用时,需要注意使用场景(获取、发送、请求、删除)与其方法相对应。


前端系列课程(4)-HTTP 协议

7种请求方式描述

常用的请求方式是:get 请求和 post 请求。

(1)GET 请求:将请求参数追加在 URL 后面,不安全;URL 长度限制 GET 请求方式的数据大小(浏览器不同,有所不同,一般不大于 8kb);没有请求体。

(2)POST 请求:请求参数显示请求体处,较安全;请求数据大小没有显示。

只有表单设置为 method="post" 才是 post 请求,其他的都是 get 请求。

常见 GET 请求:地址栏直接访问、

[2] 请求头:通常以键值对(key:value)方式传递数据 — key 为规范规定的固定值,value 为 key 对应的取值。


前端系列课程(4)-HTTP 协议

请求头描述

[3] 请求体:通常情况下,只有 post 请求才会使用到请求体,请求体中都是用户表单提交的数据,每一项数据都使用键值对,多组值使用 & 连接。如,username=tom&password=12345。

响应报文


前端系列课程(4)-HTTP 协议

响应报文格式

[1] 响应行:协议/版本 + 状态码 + 状态码描述

[ 状态码 ] 服务器与浏览器用于确定状态的固定数字号码。


前端系列课程(4)-HTTP 协议

响应状态码描述

[2] 响应头:服务器通过响应头(键值对)来控制浏览器的行为,不同的头,浏览器操作不同。


前端系列课程(4)-HTTP 协议

响应头描述

[3] 响应体:服务器发送给浏览器的正文。


分享到:


相關文章: