Http协议
a) 什么是Http协议
- 超文本传输协议
- 定义了客户端和服务器端通信的时候,数据传输格式
b) 请求的HTTP协议格式
客户端发送给服务器发送数据叫请求;
服务器给客户端传回数据叫响应;
请求分为GET和POST请求两种;
c) http协议特点
1.基于TCP/IP 高级协议 安全
2.默认端口号:80 通过http协议访问资源可以省略端口号
3.基于请求/响应模型 一次请求 对应一次响应
4.无状态:每次请求之间相互独立,不能交互数据
d) http历史版本
- 访问一个页面不是只有一个请求,每一个资源都是一次请求。所以访问一个页面发送了这么多请求,如果每次请求都单独创建链接,效率就很低。
1.0:每一次请求都是单独的链接
1.1:多次请求之间的时间不超过阈值,就会使用同一个链接,不断开连接。
d)Http请求消息数据格式
GET请求
1.请求行
- 请求方式
- 请求的资源路径[+?+请求参数]
- 请求协议的版本
2.请求头
- key:value 格式
- 请求头用于通知服务器有关于客户端请求的信息
- 典型的请求头有:
User-Agent:产生请求的浏览器类型;
Accept:客户端可识别的响应数据类型;
Accept-Language:客户端可接受的自然语言类型;
Accept-Encoding:客户端可接受的编码压缩格式;
Accept-Charset:可接受的应答的字符集;
Host:请求的服务器ip和端口号;
Connection:连接方式(closed 或 keepalive); http1.1 为keepAlive
keepalive:告诉服务器回传数据后不要马上关闭,保持一段时间;
closed:服务器回传数据后立马断开连接
Cookie:存储于客户端扩展字段,向同一域名的服务端发送属于该域的cookie;
referer:告诉服务器,当前请求从哪里来
3.请求空行
4.请求体(正文)
- get请求没有请求体
- post请求才有
- 请求体放置的就是有一些请求参数
POST请求
1.请求行
- 请求方式 POST
- 请求的资源路径 [+?+请求参数]
- 请求的协议版本号
2.请求头
- key:value 格式
- 请求头用于通知服务器有关于客户端请求的信息
3.请求空行
4.请求体
- 发送给服务器的数据
哪些是get请求,哪些是Post请求
-
Get请求:
form标签 method=get
a标签
link标签引入css
Script标签引入Js文件
img标签引入图片
iframe引入html页面
在浏览器地址中输入地址后回车 -
POST请求:
form标签 method=post
e) HTTP协议响应的格式
f) 常用响应码说明
g ) HTTP协议中数据类型
- MIME数据类型
h) 如何在谷歌浏览器查看HTTP协议
- F12打开调试工具