请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

http2.0的传输格式

老师您好,我不能理解http2.0采用二进制格式,而http1.x采用文本格式,按理说底层一定是二进制的,因为网线和光缆都只能传输脉冲二进制,所以这个格式指的是什么?另外如果http2.0采用二进制的话是不是得要有一个解析器将文本格式转化为二进制格式?这样是不是影响效率?

正在回答

1回答

你好,我觉得你整体理解的思路就不对。咱们先说基础逻辑:

http2与1相比最大的变化其实就是这个二进制分帧层, 它会将所有传输的信息分割为更小的消息和帧,也就是frame,并对它们采用二进制格式的编码。会将所有传输的信息分割为更小的消息和帧(frame),并对它们采用二进制格式的编码。

这样是传输方式的优化。

再来说说你的想法,你的想法是固定的又那么一个http的信息的东西,它还是文本格式的,http2是在1基础之上要把文本转换。这个想法完全不对,实际上http2和http1在底层上就完全不同,1的时候它出来就是文本的,而2的时候它产生就是二进制。

举个例子,就是母鸡生小鸡,1.0版本是先生个蛋,再孵成小鸡。2.0版本呢,是直接跟人一样,破腹产就出来小鸡,把底层整个改变了,传输更灵活也更快。

当然,这个例子不完全符合,但是可以一定程度上帮助你理解下。不知道我有没有说明白哈~

0 回复 有任何疑惑可以回复我~
  • 提问者 慕设计4929911 #1
    老师,感谢您的回答,您说的我理解了一点,其实我想知道的是http1.0里文本格式变成二进制格式的过程,也就是您说的鸡蛋孵化成小鸡的例子,这是不是就是二进制分帧做的事情呢?
    回复 有任何疑惑可以回复我~ 2020-01-15 21:11:14
  • 提问者 慕设计4929911 #2
    老师,我突然理解了,http2.0底层传输的没有什么文本格式,本身就是二进制,也不存在转化。
    回复 有任何疑惑可以回复我~ 2020-01-15 21:20:02
  • 提问者 慕设计4929911 #3
    老师,我本身是从事前端的,这一块的知识比较薄弱,您有没有什么好的建议?感谢
    回复 有任何疑惑可以回复我~ 2020-01-15 21:21:41
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信