编辑
2021-04-30
开发
00
请注意,本文编写于 1483 天前,最后修改于 971 天前,其中某些信息可能已经过时。

目录

HTTP定义
HTTP的概念
HTTP请求过程
HTTP的特点
HTTP协议的请求方法
HTTP状态码
URL
HTTP请求格式
HTTP响应格式

HTTP定义

全称超文本传输协议(HyperText Transfer Protocol),是一种应用层协议。HTTP是万维网的数据通信的基础。 TCP/IP五层:物理层 - 数据链路层 - 网络层 - 传输层 - 应用层

HTTP的概念

HTTP基于请求-响应模式 HTTP由客户端发起请求到服务器(默认端口80),客户端被称为user agent(用户代理程序) HTTP可以不基于TCP/IP协议传输

HTTP请求过程

  1. 浏览器向 DNS 服务器请求解析该 URL 中的域名所对应的 IP 地址;
  2. 解析出 IP 地址后,根据该 IP 地址和默认端口 80,和服务器建立TCP连接;
  3. 浏览器发出读取文件(URL 中域名后面部分对应的文件)的HTTP 请求(请求的方法、URL、协议版本、请求头部和请求数据),该请求报文作为 TCP 三次握手的第三个报文的数据发送给服务器;
  4. 服务器对浏览器请求作出响应(协议的版本、成功或者错误代码、服务器信息、响应头部和响应数据),并把对应的 html 文本发送给浏览器; 释放 TCP连接;
  5. 浏览器将该 html 文本并显示内容;

HTTP的特点

  • 基于请求响应模式
  • 无状态 - cookie
  • 无连接 - 不建立长久连接,keepalive_timeout

HTTP协议的请求方法

HTTP/1.1协议中规定了8中请求方法

  1. GET - 使用GET方法应该只用在读取数据,而不应当被用于产生“副作用”的操作中
  2. HEAD - 与GET方法一样,都是向服务器发出指定资源的请求。只不过服务器将不传回资源的本文部分
  3. *POST - 向指定资源提交数据,请求服务器进行处理
  4. PUT - 向指定资源位置上传其最新内容。
  5. DELETE - 请求服务器删除Request-URI所标识的资源
  6. TRACE - 回显服务器收到的请求,主要用于测试或诊断。
  7. OPTIONS - 这个方法可使服务器传回该资源所支持的所有HTTP请求方法。
  8. CONNECT - HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器
  9. *PATCH - 扩展方法

HTTP状态码

  • 1xx消息——请求已被服务器接收,继续处理
  • 2xx成功——请求已成功被服务器接收、理解、并接受
  • 3xx重定向——需要后续操作才能完成这一请求
  • 4xx客户端错误——请求含有词法错误或者无法被执行
  • 5xx服务器错误——服务器在处理某个正确请求时发生错

URL

https://notifications.console.aliyun.com/?spm=5176.12207334.top-nav.dnews.7c121cbeuBETPj&accounttraceid=4b5bedef722546cea4ceeace1c47ea11zjgx#/innerMsg/all/0

  • http(s): 传输协议
  • //: 层级URL标记符号
  • notifications.console.aliyun.com:服务器
  • 80: 端口
  • /:路径
  • spm=5176.12207334.top-nav.dnews.7c121cbeuBETPj&accounttraceid=4b5bedef722546cea4ceeace1c47ea11zjgx:查询
  • #/innerMsg/all/0 片段

HTTP请求格式

attach_167a8a1d363c6bc3.jpg

attach_167a8a23dfe2bbda.png

HTTP响应格式

attach_167a8a1378ac6dc8.jpg

attach_167a8a0d06a6d709.png

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:谭三皮

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!