HTTP协议
1、http协议的特点
- 简单快速,灵活,无连接,无状态
 
2、http报文组成部分
请求报文
- 请求行(http方法,页面地址,http协议/版本)
 - 请求头(一些key/value告诉服务端我要哪些内容)
 - 空行(结束请求头)
 - 请求体
 
响应报文
- 状态行(协议,版本,状态码)
 - 响应头
 - 空行
 - 响应体
 
3、http方法
- get 获取资源
 - post 传输资源
 - put 更新资源
 - delete 删除资源
 - head 获取报文首部
 
4、post和get的区别
- get浏览器回退无害的,post要发一次请求
 - get产生的url地址可以收藏,post不可以
 - get请求会被浏览器主动缓存,post不可以(除非手动)
 - get请求只支持url编码,post可以多种编码
 - get请求参数会完整的保留在浏览器历史纪录里,post不会
 - get请求参数是有长度限制的,post没有
 - 参数的数据类型,get只接受ascii,post没有限制
 - get比post更不安全,参数暴露在url上,不能用来传递敏感信息
 - get参数通过url传递,post通过 request body传递
 
5、http状态吗
- 1xx - 请求接受,继续处理
 - 2xx - 处理成功
 - 3xx - 重定向
 - 4xx - 客户端错误
 5xx - 服务器端错误
206 请求成功部分
- 301 所有的请求已经移至新的url
 - 302 所有的请求已经临时转移到新的url
 - 304 缓存文档可以继续使用
 - 400 客户端语法错误
 - 403 请求的页面被禁止访问
 - 404 资源不存在
 - 500 不可预期的错误
 - 503 临时过载或当机
 
6、持久链接
keep-alive
- 请求1-》响应1-》请求2 -》响应2-》请求3-》响应3
 
7、管线化
请求1-》请求2-》请求3-》响应1-》响应2-》响应3