day01
1.1http协议
1.1.1 http概念
是互联网应用最广泛的一种网络协议,是客户端与服务器端请求
与响应(应答)的标准。
超文本传输协议(HTTP,HyperText Transfer Protocol)设计http最初
的目的是为了提供一种发布和接收HTML页面的方法。
Http协议一般用于B/S架构。
1.1.2 https概念
https(HyperText Transfer Protocol over Secure Socket Layer)
就是http的安全版,而安全的基础是ssl,因为加密时需要它。
1.1.3 http与https的区别
1、http协议需要用到ca申请证书,一般免费证书较少,要一定的费用。
2、http是超文本传输协议,信息明文传输,https则具备安全性ssl
加密传输协议。
3、连接方式不同,http的默认端口是80,而https的默认端口是443.
4、http连接简单无状态;https需要ssl+http协议进行加密传输、
身份验证的网络协议,比http协议安全。
1.2 http组成
请求行:请求的第一行就是,格式:方法URL协议/版本。
消息报头:请求头包含有关客户端环境和请求正文。
请求正文:请求头与请求正文之间有一个空行,表示请求头已经结束,接
下来是请求正文。
请求方法:
GET 请求获取Request-URI所标识的资源
POST 在Reques-URI所标识的资源后附加新的数据
HEAD 请求获取由Request-URI所标识的资源的响应消息报头
PUT 请求服务器存储一个资源,并用Request-URI作为其标识
DELETE 请求服务器删除Request-URI所表示的资源
TRACE 请求服务器回送收到的请求信息,主要用于测试或诊断
CONNECT 保留将来使用
OPTION 请求查询服务器的性能,或者查询与资源相关的选项和需求
1.3 http响应格式
状态行
HTTP-Version表示服务器HTTP协议的版本;
Status-Code表示服务器发回的响应状态代码;
Reason-Phrase表示状态代码的文本描述。
消息报文
Location:用于重定向接受者到一个新的位置
Server:服务器用来处理请求的软件信息
Content-Encoding:Content-Encoding实体报头域被使用作媒 体类型的修饰符.
Content-Language:Content-Language实体报头域描述了资源所用的自然语言。
Content-Length: Content-Length实体报头域用于指明正文的长度.
Content-Type:Content- Type实体报头域用语指明发送给接收者的实体正文的媒体类型。
Last-Modified:Last-Modified实体报 头域用于指示资源最后的修改日期及时间。
Expires: Expires实体报头域给出响应过期的日期和时间。
Expires实体报头域使用的日期和时间必须是RFC 1123中的日期格式
响应报文
是服务端返回给客户端的HTML文本内容,或者其他格式的数据
响应状态码
状态码(100-199):信息状态码,表示成功接收请求,要求客户端继续提交
下一次请求
状态码(200-299):成功状态码,表示成功接收请求并已完成整个处理过程
状态码(300-399):重定向状态码,表示请求的资源已经移动到一个新地址
状态码(400-499):客户端的请求有错误,常用404,403
状态码(500-599):服务器出现错误,常用500
1.4 http/2.0 ,1.1 ,1.0的区别
HTTP/0.9,1991,只有GET请求/没正式版本
HTTP/1.0,1996,传输内容不限制,增加PUT/正式作为标准
HTTP/1.1,1997,持久连接(长连接)、节约带宽、HOST域、
管道机制、分块传输代码/2015年前使用最广泛
HTTP/2.0,2015,多路复用、服务器推送、头信息压缩、二进制协议/
逐渐覆盖市场
1.4.1 HTTP1.0和HTTP1.1的区别
缓存处理、带宽优化及网络连接的使用、错误通知的管理、Host头处理、
长连接
1.4.2 HTTP2.0和HTTP1.X相比的新特性
新的二进制格式、多路复用、header压缩、服务端推送