美文网首页
01- http 入门

01- http 入门

作者: 抬头就是阳光_ | 来源:发表于2021-04-11 17:03 被阅读0次


场景:

1、我从美团订了一份外卖;

2、商家接单,骑手抢单;

3、骑手将外卖送到我手上

接下来我们来分析一下这个过程:

这个订外卖的过程中有四个关键性的主体:我、商家、骑手、外卖,哦?还有一个隐藏的主体,美团哦。

这就是我们今天要说的核心:客户端、服务器端、传输、资源、协议。

      在这个场景中:我是客户端,商家是服务器端,我要想拿到我要的外卖是资源。我下单之后棋手通过我的订单找到商家拿到外卖(资源)然后送到我手上,我接到订单这次交易完成(应该是需要签收才可以结束,或者超时自动结束),这就是一次http请求和响应。 

1、认识下我们今天的主角http

HTTP 全称 HyperText Transfer Protocol「超文本传输协议」,拆成三个部分来看,即「超文本」,「传输」,「协议」。

你可以把它理解成上述场景中美团的作用,确切点说应该是美团的外卖协议。

HTTP

超文本:即「超越了普通文本的文本」,即音视频,图片,文件的混合体,大家常见的网页很多就内嵌了 img, video 这些标签解析展现而成的图片,视频等,除了这些超文本内容外,最关键的是超文本中含有超链接,超链接意味着网页等文件内容的超文本上可以点击链接到其他页面上,互联网就是通过这样的超链接构成的。

超文本

传输: 传输意味着至少有两个参与者,比如 A,B,这意味着 HTTP 协议是个双向协议,一般是将「超文本」按照约定的协议以二进制数据包的形式从 A 传到 B 或 B 传到 A, A <===> B,我们把发起请求的叫请求方,接到请求后返回数据的那一方称为应答方或者响应方,但需要注意的是传输也不限于两个参与者,允许中间有中转或者接力,只要参与者间遵循约定的协议即可传输。

协议:HTTP 是一个协议,啥是协议?在日常生活中协议并不少见,比如开车上路就要遵守交通规则,租房就要签订租房合同协议(租户-<===> 中介(N) <===> 房东),「协」意味着至少有两人参与,「议」意味着双方要就某项条款达成一致,比如开车上路不能超速,租房协议规定月付 xx 元,协议即对通信双方的约束,双方按照约定传输数据才能进行明白对方的意思,否则便是鸡同鸭讲。

到这里我们可以简单总结下HTTP了:

HTTP 是一个在计算机世界里专门在两点之间传输文字、图片、音频、视频等超文本数据的约定和规范。

1.1、HTTP简史

2、寻找我的资源「超文本」

2.1、URI和URL

      回到上述场景中,这个超文本就是我们的外卖,骑手是怎么找到我们的外卖的呢?肯定是xxx省xxx区xxx街道的xxx餐厅的xxx饭。

        在http协议中,资源的定位也是类似的。

        使用 URI(Uniform Resource Identifier) 即统一资源标识符就可以唯一定位互联网上的资源。URI 大家比较少听过,大家更熟悉的可能是 URL(Uniform Resource Locator),即统一资源定位符,URL 其实是 URI 的一种子集,区别就是URI 定义资源,而 URL 不单定义这个资源,还定义了如何找到这个资源。

大多数URL方案的URL语法都是建立在这个由9部分构成的通用格式上的。

<scheme>://<user>:<password>@<host>:<port>/<path>;<params>?<query>#<frag>

2.2、 DNS协议

        上述我们知道,一个URL中一个重要组成部分是IP,但是我们在访问网站的时候却不直接访问「161.117.232.65」。哈哈,实在是记不住啊,也不想记啊。这个时候就需要在IP和访问网址之间建立一个映射关系,这就是DNS。它起的作用就是将你访问的网址变成IP,举个简单的例子,它可以将你通讯录中的名字和电话号码对应起来,打电话打给的是张三,实际上拨通的是张三的手机号。


DNS解析其实无法一步到位,是个复杂的过程。要理解DNS的解析过程,首先要掌握域名的层级结构。我们以百度为例

最右边的被称为顶级域名,然后是二级域名,层级关系向左降低,最左边的是主机名,通常用来表示主机的用途,比如 「www」 表示提供万维网服务。

同域名一样,DNS也是分层的,核心系统是一个三层的树状结构

2.3、TCP/IP 协议

        上述我们用DNS将域名解析成了具体的资源服务器的IP,接下来就该通信了,http协议使用的是TCP/IP协议栈,这也是为什么需要将域名解析成IP的原因了,因为人家TCP/IP这样规定的呀。想要用人家的技术,就要遵循人家的协议。

看看 TCP/IP 协议栈各层的功能。

我们可以把前面三层认为是高速公路及其配套的基础设施,至于要传什么货物,高速公路是否要关闭等则由应用层决定。

到此为止,就耐心等待我们的外卖吧。

小结:

1、http是在两点之间传输超文本的约定和规范

2、http通过URI来统一定位资源

3、http的实现依赖于DNS协议、TCP/IP通信协议

下一篇我们来说说订单小票的作用吧。

参考文献:

Http权威指南;

51 张图助你彻底掌握 HTTP 协议

36张图学http

相关文章

  • 01- http 入门

    场景: 1、我从美团订了一份外卖; 2、商家接单,骑手抢单; 3、骑手将外卖送到我手上 接下来我们来分析一下这个过...

  • 07-Vue路由vue-router

    01-路由入门 02-路由嵌套

  • 入门:HTTP入门

    问题 1.HTTP 请求包括哪些部分2.HTTP 响应包括哪些部分3.如何用Chrome开发者工具查看 HTT...

  • 爬虫入门系列(六):正则表达式完全指南(下)

    爬虫入门系列目录: 爬虫入门系列(一):快速理解HTTP协议 爬虫入门系列(二):优雅的HTTP库requests...

  • HTTP入门

    HTTP是一个客户端终端(用户)和服务器端(网站)请求和应答的标准。通过使用网页浏览器、网络爬虫或者其它的工具,客...

  • http入门

    http 简介 http 历史 1989, 蒂姆。伯纳斯-李在CERN发起 1999年6月,IETF(互联网工程小...

  • http入门

    一、URI 是什么 全程:统一资源标识符,俗称网址 URI 分为 URL 和 URN URN Google URN...

  • HTTP入门

    基本概念 三个基本概念 URI:统一资源资源标志符(Uniform Resource Identifier) HT...

  • HTTP入门

    博主最近在复习HTTP,之前用书主要是《计算机网络》谢希仁版本和上野宣的《图解HTTP》,最近结合网上博客,进行复...

  • http入门

    一,http请求包括: 1 动词 路径 协议/版本 2 Key1: value1 2 Key2: value2 2...

网友评论

      本文标题:01- http 入门

      本文链接:https://www.haomeiwen.com/subject/ypgdkltx.html