课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
http是web前端开发程序员需要重点掌握的一个编程技术知识点,而今天我们就简单给大家介绍一下http的特点都有哪些。
HTTP协议是一个“灵活可扩展”的传输协议。
HTTP协议初诞生的时候就比较简单,本着开放的精神只规定了报文的基本格式,比如用空格分隔单词,用换行分隔字段,“header+body”等,报文里的各个组成部分都没有做严格的语法语义限制,可以由开发者任意定制。
所以,HTTP协议就随着互联网的发展一同成长起来了。在这个过程中,HTTP协议逐渐增加了请求方法、版本号、状态码、头字段等特性。而body也不再限于文本形式的TXT或HTML,而是能够传输图片、音频视频等任意数据,这些都是源于它的“灵活可扩展”的特点。
而那些RFC文档,实际上也可以理解为是对已有扩展的“承认和标准化”,实现了“从实践中来,到实践中去”的良性循环。
HTTP协议是一个“可靠”的传输协议。
这个特点显而易见,因为HTTP协议是基于TCP/IP的,而TCP本身是一个“可靠”的传输协议,所以HTTP自然也就继承了这个特性,能够在请求方和应答方之间“可靠”地传输数据。
它的具体做法与TCP/UDP差不多,都是对实际传输的数据(entity)做了一层包装,加上一个头,然后调用SocketAPI,通过TCP/IP协议栈发送或者接收。
不过我们必须正确地理解“可靠”的含义,HTTP并不能100\%保证数据一定能够发送到另一端,在网络繁忙、连接质量差等恶劣的环境下,也有可能收发失败。“可靠”只是向使用者提供了一个“承诺”,会在下层用多种手段“尽量”保证数据的完整送达。
HTTP协议是一个应用层的协议。
这个特点也是不言自明的,但却很重要。
在TCP/IP诞生后的几十年里,虽然出现了许多的应用层协议,但它们都仅关注很小的应用领域,局限在很少的应用场景。例如FTP只能传输文件、SMTP只能发送邮件、SSH只能远程登录等,在通用的数据传输方面“完全不能打”。
所以HTTP凭借着可携带任意头字段和实体数据的报文结构,以及连接控制、缓存代理等方便易用的特性,一出现就“技压群雄”,迅速成为了应用层里的“明星”协议。只要不太苛求性能,HTTP几乎可以传递一切东西,满足各种需求,称得上是一个“万能”的协议。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请在707945861群中学习了解。