持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第16天,点击查看活动详情
HTTP-HyperText Transfer Protocol,即超文本传输协议,是一种基于TCP协议的应用层协议,结构简单,HTTP协议最初是用于从WWW服务器传输网页,图像等数据到本地浏览器进行浏览,由于其格式简单,使用方便,现在也广泛应用于传输JSON及XML等格式的接口数据。
HTTP协议包含请求(Request)和响应(Response)两部分组成,请求有请求行、请求头及请求数据三部分组成,响应有状态行,响应头和响应数据三部分组成。HTTP协议一种无状态协议,在HTTP协议中只提供了本次交互请求和响应格式规范,默认并不记录之前的请求状态。
HTTP协议版本版本有几个,接下来说下这几个的版本
HTTP协议经历了HTTP0.9 HTTP1.0 HTTP1.1 和HTTP2.0几个版本。
HTTP0.9为最初最早的简陋版本,仅支持GET方法
HTTP1.0形成了比较完整的HTTP协议,支持GET,POST和HEAD方法,支持Cache缓存控制,支持不同的数据内容类型Content-Type,同时补充了响应的状态码。
HTTP1.1在HTTP1.0的基础上有添加了OPTIONS,PUT,PATCH,DELETE,TRACE,CONNECT 有6种请求方法,增加了长连接(Keepalive)的支持,加入了管道机制,支持断点续传,并补充了24个错误状态码,HTTP1.1协议目前是咱们使用的主流版本协议。大多数都在使用这个版本的协议
HTTP2.0相较于HTTP1.0和HTTP1.1,HTTP2.0协议改变较大,HTTP2.0不在使用文本格式而统一使用新的二进制格式封装数据,成为“帧”,同事HTTP2.0支持多路复用,Header压缩和服务端推送,极大的优化了HTTP协议的性能。暂时使用的不太多。