昨天,我与同事讨论了HTTP。有人问为什么HTTP是用纯文本方式设计的。当然,它可以像TCP协议(protocol)一样以二进制方式进行设计,使用标志来表示不同类型的方法(POST,GET)和变量(HTTP header )。那么,为什么以这种方式设计HTTP?有任何技术或历史原因吗?
最佳答案
从技术上和历史上来讲,一个原因是在Unix世界中几乎总是首选文本协议(protocol)。
好吧,这实际上不是原因,而是一种模式。这样做的基本原理是文本协议(protocol)允许您仅转储通过的所有内容即可查看网络上正在发生的情况。您不需要像TCP / IP一样的专业分析器。这使得调试和维护更加容易。
不仅HTTP,而且许多协议(protocol)都是基于文本的(例如FTP,POP3,SMTP,IMAP)。
您可能想看一下Unix编程的艺术,以更详细地解释此Unix。