最近我在做前端面试题总结系列,感兴趣的朋友可以添加关注,欢迎指正、交流。

概念

HTTP 的全称是 Hyper Text Transfer Protocol,翻译过来就是“超文本传输协议”。

HTTP 是一个简单的请求-响应协议,它通常运行在 TCP 之上。它指定了客户端可能发送给服务器什么样的消息以及得到什么样的响应。

补充

HTTP 是万维网(World Wide Web)的基础协议

HTTP 详细规定了浏览器和万维网(WWW = World Wide Web)服务器之间互相通信的规则,通过因特网传送万维网文档的数据传送协议。

自 Tim Berners-Lee 博士和他的团队在 1989-1991 年间创造出 HTTP 以来,HTTP 已经发生了太多的变化,在保持协议简单性的同时,不断扩展其灵活性。如今,HTTP已经从一个只在实验室之间交换文件的早期协议进化到了可以传输图片,高分辨率视频和3D效果的现代复杂互联网协议。

HTTP 是应用层协议

HTTP 是应用层的协议,通过 TCP,或者是 TLS -加密的TCP连接来发送,理论上任何可靠的传输协议都可以使用。

同其他应用层协议一样,HTTP 协议是为了实现某一类具体应用的协议,并由某一运行在用户空间的应用程序来实现其功能。

HTTP 是一种协议规范,这种规范记录在文档上,为真正通过 HTTP 进行通信的 HTTP 的实现程序。

HTTP 是一种可扩展的协议

因为其良好的扩展性,时至今日,它不仅被用来传输超文本文档,还用来传输图片、视频或者向服务器发送如 HTML 表单这样的信息。HTTP 还可以根据网页需求,仅获取部分 Web 文档内容更新网页。

HTTP 是基于 B/S 架构进行通信的

HTTP 的服务器端实现程序有 httpd、nginx 等。

其客户端的实现程序主要是 Web 浏览器,例如 Firefox、Google Chrome、Safari、Opera 等。

Web 服务是基于 TCP 的,因此为了能够随时响应客户端的请求,Web 服务器需要监听在 80/TCP 端口,这样客户端浏览器和 Web 服务器之间就可以通过 HTTP 进行通信了。

HTTP 由请求和响应组成

HTTP 是一个标准的客户端服务器模型。

客户端和服务端通过交换各自的消息(与数据流正好相反)进行交互。由像浏览器这样的客户端发出的消息叫做 requests,被服务端响应的消息叫做 responses。

请求和响应消息的头以 ASCII 形式给出;而消息内容则具有一个类似 MIME 的格式。这个简单模型是早期 Web 成功的有功之臣,因为它使开发和部署非常地直截了当。

HTTP 是一种能够获取如 HTML 这样的网络资源的 protocol (通讯协议)

它是在 Web 上进行数据交换的基础,是一种 client-server 协议。

请求通过一个实体被发出,实体也就是用户代理。大多数情况下,这个用户代理都是指浏览器,当然它也可能是任何东西,比如一个爬取网页生成维护搜索引擎索引的机器爬虫。

也就是说,请求通常是由像浏览器这样的接受方发起的。一个完整的Web 文档通常是由不同的子文档拼接而成的,像是文本、布局描述、图片、视频、脚本等等。

HTTP 协议以明文方式发送内容

HTTP 不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的传输报文,就可以直接读懂其中的信息,因此,HTTP 协议不适合传输一些敏感信息,比如:信用卡号、密码等支付信息。

总结

HTTP 是一种运行于 TCP 协议上的应用层协议。

~
本文完,感谢阅读!

~

学习有趣的知识,结识有趣的朋友,塑造有趣的灵魂!

大家好,我是〖编程三昧〗的作者 隐逸王,我的公众号是『编程三昧』,欢迎关注,希望大家多多指教!

你来,怀揣期望,我有墨香相迎! 你归,无论得失,唯以余韵相赠!

知识与技能并重,内力和外功兼修,理论和实践两手都要抓、两手都要硬!

【前端 · 面试 】HTTP 总结(一)—— HTTP 概述相关推荐

  1. web前端面试问答_Web服务面试问答

    web前端面试问答 在这篇文章中,我们涵盖了您需要熟悉的Web服务概念的几乎所有部分,以回答任何层级问题. 您还将在分类中找到最佳的Web服务面试问题和答案,因此只有在必要时才可以使用特定条款. 今天 ...

  2. 前端面试必备ES6全方位总结

    掘金/魔王哪吒 大家好,我是魔王哪吒,话不多说,今天带来的是一篇<前端面试必备ES6全方位总结>文章,欢迎大家喜欢. 前言 学习ES6需要掌握的路线,了解什么是ECMAScript概述,了 ...

  3. 前端面试宝典。向未来开启计划

    写在前面 CSDN话题挑战赛第1期 活动详情地址:CSDN 参赛话题:前端面试宝典 话题描述:欢迎各位加入话题创作得小伙伴,如果我没有猜错得话,我觉得你是应该同我一样是一位前端人.如今前端在IT事业中 ...

  4. 前端面试查漏补缺--(三) 跨域及常见解决办法

    前言 本系列最开始是为了自己面试准备的.后来发现整理越来越多,差不多有十二万字符,最后决定还是分享出来给大家. 为了分享整理出来,花费了自己大量的时间,起码是只自己用的三倍时间.如果喜欢的话,欢迎收藏 ...

  5. 一位大佬的前端面试分享

    写在前面的话 博主就读于电子科技大学,大三狗一枚! 面试是个漫长的过程,从海投到收获电话面试,一面.二面.三面,一个步骤出错那么后面就宣告终结.同时,面试过程中你也可能会遇到一些面试官的刁难,甚至部分 ...

  6. [推荐] 前端面试必备 ES6 全方位总结

    6.[推荐] 前端面试必备 ES6 全方位总结 掘金/魔王哪吒大家好,我是魔王哪吒,话不多说,今天带来的是一篇前端面试必备ES6全方位总结文章,欢迎大家喜欢.前言 学习ES6需要掌握的路线,了解什么是 ...

  7. 2020年前端面试复习必读精选文章【赠复习导图】

    前言 之前写过一篇 一年半经验如何准备阿里巴巴前端面试,给大家分享了一个面试复习导图,有很多朋友说希望能够针对每个 case 提供一个参考答案. 写答案就算了,一是精力有限,二是我觉得大家还是需要自己 ...

  8. github大佬呕心沥血整理的2020年前端面试复习必读精选文章【赠复习导图】

    2021年前端面试必读文章[超三百篇文章/赠复习导图] 转载.原文链接 哈哈,之前是 2020 年必读文章,到了 2021 年了,感觉这些文章还都是经典,那就改个标题吧.[手动狗头] 前言 之前写过一 ...

  9. 前端面试官,我为什么讨厌你。

    近两年来,参加过的前端面试不下二十场了,吐槽一下.我所经历的,都是小公司,大公司的同学请无视. 招聘信息能否不要装逼?写一大堆你项目根本用不上的,来给谁看?我曾遇到上面写了一堆对js如何要求,对mv* ...

  10. 前端面试的作品示例_如何回答任何技术面试问题-包括示例

    前端面试的作品示例 Technical interviews can be extremely daunting. From the beginning of each question to the ...

最新文章

  1. 第十五届全国大学生智能车竞赛线上竞赛方案(草案)
  2. 【正一专栏】今晚国足能上演奇迹吗?
  3. Netty实现自定义协议
  4. python编译过程和解释过程的不同_Python编译/解释过程
  5. 【Linux】一步一步学Linux——lastb命令(99)
  6. 飞机票应该如何选择更安全
  7. git删除远程分支文件,不改变本地文件
  8. Java集合查找Map,Java集合框架中Map接口的使用
  9. 计算机视觉应用培训心得体会,计算机视觉专题分享总结(附PPT)
  10. etl调度工具 Taskctl 变量概述
  11. 软件可靠性方法 学习笔记
  12. NLPIR词性标记集
  13. 最新版面具隐藏root过检测教程(免刷机)
  14. w7设置双显示器_4K+144Hz 支持FreeSync Acer XV273K显示器评测
  15. 硬核科普!关于5G辐射,你了解多少!
  16. 11台计算机的英语,计算机常见英语词汇
  17. python代码 素数集合 回文素数,反素数,梅森素数,双素数
  18. Manifest merger failed : uses-sdk:minSdkVersion 21 cannot be smaller than version 24
  19. python期末考试试卷及答案_python期末考试复习试卷
  20. Mysql数据库部分简单整理

热门文章

  1. 如何在Git中合并特定的提交
  2. win10安全模式怎么修复系统
  3. ros中web端通过 ajax 访问 nginx 加载静态 pgm 地图显示在canvas画布中
  4. slam无人车清除地图残影
  5. 循环报数java代码_循环报数 Java实现
  6. jframe大小根据组件变化_Swing JDialog容器和JFrame容器使用教程
  7. obs多推流地址_什么都比不上动手能力,OBS 推流实践小记
  8. 守护你一生-守护线程(Java)
  9. ❤️《JUC并发编程从入门到高级》(建议收藏)❤️
  10. html2canvas在iphone7 iphonex都生成不了