HTTP/2的协议ID是什么,为什么有这么多?

3
我正在学习HTTP/2。我知道有RFC7540这个规范,它是HTTP/2的规范。但是我被实现页面上显示的“协议ID”一词所困惑。有h2h2ch2-14h2-15h2-16h2-17h2c-17(不确定是否列出了全部)。

这些协议ID是什么?它们与RFC7540之间的关系是什么?

如果某个HTTP/2服务器实现声称支持某个协议ID,这意味着什么?

1个回答

7

RFC7540于2015年5月发布。它描述了h2h2c。在发布之前,共有17个草案版本:

一些Web服务器从某个草案版本开始支持HTTP2。一些Web服务器仍然支持协议的初步版本,并同时支持最终版本。名称h2-17、h2c-17、h2-16、h2c-16等用于指定对应草案规范中的h2或h2c


为什么他们还需要支持草案版本,既然最终版本已经发布了?是为了兼容性的原因吗? - laike9m
@laike9m:抱歉,这是一个太详细的问题。每个 Web 服务器的原因可能都不同。许多免费的 Web 服务器提供了清理现有代码的方法,这只需要时间,并不会为 Web 开发人员赚钱。您可以通过查看差异来调查草案标准之间的确切差异,但它有什么实际价值呢?对于大多数读者而言,更重要的是h2-16和h2-17并不是新标准(例如,16和17并不意味着2016和2017)。是这样吗? - Oleg

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接