HTTP的本质理解

HTTP是超文本传输协议,从协议传输超文本三个关键词进行进行分解。

协议关键词讲解

1.协议的第一个词是,这个就表明需要至少两方参与到其中。

2.协议的第二个词是,表明HTTP是规范和约定,需要大家共同遵守,也包括出现意外情况该怎么办的内容。

协议关键词讲明HTTP是一种用在计算机世界里需要多方参与的规范和约定,它使用计算机能够理解的语言确立了一种计算机之间交流通信的规范,以及相关的各种控制和错误处理方式。

另外底下再补充一点:

在《趣谈网络协议》《第1讲 | 为什么要学习网络协议?》提到了网络的三要素:

语法,就是这一段内容要符合一定的规则和格式。例如,括号要成对,结束要使用分号等。

语义,就是这一段内容要代表某种意义。例如数字减去数字是有意义的,数字减去文本一般来说就没有意义。

顺序,就是先干啥,后干啥。例如,可以先加上某个数值,然后再减去某个数值。

传输关键词讲解

传输关键词也有两个关键点:

1.HTTP是一个双向协议,就是可以把数据从A传输到B,也可以把数据从B到A。先发起传输的一方是请求方,接收传输的一方是应答方或者响应方。

2.HTTP在请求方和响应方之间允许有"中转"或者"接力"。

HTTP 是一个在计算机世界里专门用来在两点之间传输数据的约定和规范。

超文本关键词讲解

超文本也有两点:

所谓"文本"(Text),就表示 HTTP 传输的不是 TCP/UDP 这些底层协议里被切分的杂乱无章的二进制包(datagram),而是完整的、有意义的数据,可以被浏览器、服务器这样的上层应用程序处理。在互联网早期,"文本"只是简单的字符文字,但发展到现在,"文本"的涵义已经被大大地扩展了,图片、音频、视频、甚至是压缩包,在 HTTP 眼里都可以算做是"文本"。

所谓"超文本",就是"超越了普通文本的文本",它是文字、图片、音频和视频等的混合体,最关键的是含有"超链接",能够从一个"超文本"跳跃到另一个"超文本",形成复杂的非线性、网状的结构关系。

对于"超文本",我们最熟悉的就应该是 HTML 了,它本身只是纯文字文件,但内部用很多标签定义了对图片、音频、视频等的链接,再经过浏览器的解释,呈现在我们面前的就是一个含有多种视听信息的页面。

概括来说,HTTP是超文本传输协议,是计算机世界里边两点之间传输文字、图像、音频和视频等混合体的约定和规范。

此文章为10月Day 11学习笔记,内容来源于极客时间《透视 HTTP 协议》

相关推荐
汤愈韬1 小时前
防火墙双机热备之VRRP
网络·网络协议·security
S1998_1997111609•X2 小时前
company:/erp:-9/po-api=-TCP—iOSUCdc.=no?=-ERP•£
网络协议·百度·ssh
Hello_Embed3 小时前
嵌入式上位机开发入门(二十九):JsonRPC TCP Server
网络·单片机·网络协议·tcp/ip·json·嵌入式
S1998_1997111609•X3 小时前
IP:/-cn,?$&-192=80~3306/- SQL if(REC)
网络协议
Rust研习社3 小时前
Reqwest 兼顾简洁与高性能的现代 HTTP 客户端
开发语言·网络·后端·http·rust
pu_taoc5 小时前
KCP协议完全指南:在UDP上再造一个更快的“TCP”
网络协议·tcp/ip·udp
想唱rap16 小时前
UDP套接字编程
服务器·网络·c++·网络协议·ubuntu·udp
_Evan_Yao18 小时前
对话的边界:HTTP 的克制,SSE 的流淌,WebSocket 的自由
java·后端·websocket·网络协议·http
小心我捶你啊20 小时前
VPS的主要用途,与其它方式的区别
服务器·网络协议·tcp/ip
郝学胜-神的一滴1 天前
epoll 边缘触发 vs 水平触发:从管道到套接字的深度实战
linux·服务器·开发语言·c++·网络协议·unix