超文本传输协议 HTTP协议
特点:
支持客户/服务器模式 B/S
简单快速(只需要传送 请求 方法和路径)
灵活(允许传送任意类型的对象)
无连接(每次连接只处理一个请求)
无状态(如果后续处理需要前端信息,必须被重传)
请求/响应的步骤
1.客户端连接到Web服务器
2.发送HTTP请求
3.客户端接受请求并返回HTTP响应
4.释放连接TCP连接
5.客户端浏览器解析HTML内容
面试题
1.在浏览器地址栏键入URL,按下回车之后经历的流程
- 浏览器依据URL逐层查询 DNS服务器缓存 解析URL中域名对应的IP地址。(从近到远,浏览器缓存、系统缓存、路由器缓存、IPS缓存、根域名服务器、等查询到就直接返回不在查询后面的。)
- 找到IP地址后,根据对应端口进行(默认80端口) TCP连接
- 浏览器发送HTTP请求发送给服务器
- 服务器处理请求返回HTTP报文,给浏览器。
- 浏览器解析渲染页面
- 释放TCP连接(四次挥手)
2.说说常见的HTTP状态码
-
1xx::表示请求已经接受,继续处理
-
2xx:成功-表示请求已经被接受
-
3xx:重定向-要完成请求需要进一步操作
-
4xx:客户端错误-请求有语法错误或者请求无法实现
-
5xx:服务器端错误-服务器未能实现合法请求
-
100 临时响应,说明请求已经被接受
-
200 成功访问
-
202 已经接受了请求,但是没有处理,最后会不会处理不确定
-
301 一般出现在重定向
-
404 页面没有找到
-
500 服务器遇到未知的错误,导致无法完成客户端当前的请求
-
503 服务器由于临时的服务器过载或者是维护,无法解决当前的请求