HTTP是什么?

HTTP 全程超文本传输协议(HyperText Transfer Protocol)。

包含三部分:超文本、传输、协议。

1. 协议

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

2. 传输

HTTP是一个“传输协议”,把一堆东西从A点搬到B点,或从B点搬到A点(A<===>B)。

  • 双向协议,请求方可以发送数据给响应方;响应方也可以把数据发送给请求方。
  • 数据可以在多个角色间传输(A<=>X<=>Y<=>Z<=>B),这些角色也遵从HTTP协议。

    只要保证基本数据传输,还能加上额外功能,比如安全认证,数据压缩,编码转换等等。

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

3. 超文本

超文本是文字、图片、音频、视频等的混合体,包含超链接,比如HTML。

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

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


HTTP 不是什么?

1. HTTP不是互联网(Internet)

2. HTTP不是编程语言,但是编程语言可以实现HTTP

3. HTTP不是HTML

HTML是超文本的载体,是一种标记语言。

HTML可以被HTTP协议传输,同样图片、音频等资源也可以被HTTP协议传输。

4. HTTP不是一个孤立协议

HTTP通常跑在TCP/IP协议栈之上,依靠IP协议实现寻址和路由,依靠TCP协议实现可靠数据传输,依靠DNS协议实现域名查找,依靠SSL/TLS协议实现安全通信。此外,还有一些协议依赖于HTTP,例如 WebSocket、HTTPDNS等。这些网络交织形成协议网,而HTTP处于中心地位。


总结

  1. HTTP 是一个用在计算机世界里的协议,它确立了一种计算机之间交流通信的规范,以及相关的各种控制和错误处理方式。
  2. HTTP 专门用来在两点之间传输数据,不能用于广播、寻址或路由。
  3. HTTP 传输的是文字、图片、音频、视频等超文本数据。
  4. HTTP 是构建互联网的重要基础技术,它没有实体,依赖许多其他的技术来实现,但同时许多技术也都依赖于它。

随机推荐

  1. Kurator,你的分布式云原生解决方案

    本文分享自华为云社区<DTSE Tech Talk | 第40期:Kurator,你的分布式云原生解决方案>,作者:华为云社区精选. 什么是分布式云原生? 中国信通院给出的定义:分布式云原 ...

  2. 保护个人数据安全,使用luks加密硬盘分区

    create:2023-01-24 17:44:44 准备工作 新硬盘4T,无数据.在root用户或sudo状态下执行. 首先创建分区表,由于mbr最大支持只有2T,因此分区表创建为gpt格式. 然后 ...

  3. 「codeforces - 1633F」Perfect Matching

    link. 首先所有的 activated nodes 组合成了一棵以 \(1\) 为根的有根树.询问即求由 activated nodes 组成的树的最大匹配.对于树上最大匹配有一个贪心策略:自底向 ...

  4. Centos7安装yarn

    Centos7安装yarn 设置Yarn仓库 curl --silent --location https://dl.yarnpkg.com/rpm/yarn.repo | sudo tee /etc ...

  5. Java SE 21 新增特性

    Java SE 21 新增特性 作者:Grey 原文地址: 博客园:Java SE 21 新增特性 CSDN:Java SE 21 新增特性 源码 源仓库: Github:java_new_featu ...

  6. 7 个 IntelliJ IDEA 必备插件,显著提升编码效率

    首先说一下idea引入外部插件的方式 用插件 1. FindBugs-IDEA 2. Maven Helper 3. VisualVM Launcher 4. GenerateAllSetter 5. ...

  7. SaaS模式相较传统CRM系统有何优势?

    SaaS模式的CRM客户管理系统相较于传统的CRM客户管理系统更加方便灵活,更加符合如今的市场环境.它解决了传统CRM系统投入大.维护难的难题,降低了中小企业导入CRM的门槛.下面详细说说SaaS模式 ...

  8. WPF性能优化:Freezable 对象

    Freezable是WPF中一个特殊的基类,用于创建可以冻结(Freeze)的可变对象.冻结一个对象意味着将其状态设置为只读,从而提高性能并允许在多线程环境中共享对象. Freezable的应用 我们 ...

  9. 外层div随内层div高度自适应

    首先说一下textarea的高度随文字的内容自适应,用div模拟textarea.直接看代码.其中 contenteditable="true"表示div可以编辑..主要是设置 o ...

  10. MicroSIP-3.21.3+pjproject-2.13.1+ opus-1.3.1+VS2019

    本文记录了我通过VS2019编译MicroSIP-3.21.3开源项目的过程. Microsip:MicroSIP source code pjproject:Download PJSIP - Ope ...