
课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
http编程技术是每一位web前端开发程序员都需要熟练掌握的一个编程知识点,而本文我们就通过案例分析来简单了解一下,http的优缺点都有哪些。
一、HTTP凸出的优点是「简单、灵活和易于扩展、应用广泛和跨平台」。
1.简单
HTTP基本的报文格式就是header+body,头部信息也是key-value简单文本的形式,易于理解,降低了学习和使用的门槛。
2.灵活和易于扩展
HTTP协议里的各类请求方法、URI/URL、状态码、头字段等每个组成要求都没有被固定死,都允许开发人员自定义和扩充。同时HTTP由于是工作在应用层(OSI七层),则它下层可以随意变化。HTTPS也就是在HTTP与TCP层之间增加了SSL/TLS安全传输层,HTTP/3甚至把TCP层换成了基于UDP的QUIC。
3.应用广泛和跨平台
互联网发展至今,HTTP的应用范围非常的广泛,从台式机的浏览器到手机上的各种APP,从看新闻、刷贴吧到购物、理财,HTTP的应用片地开花,同时天然具有跨平台的优越性。
二、HTTP的缺点--双刃剑
1.无状态
无状态的好处:因为服务器不会去记忆HTTP的状态,所以不需要额外的资源来记录状态信息,这能减轻服务器的负担,能够把更多的CPU和内存用来对外提供服务。
无状态的坏处:既然服务器没有记忆能力,它在完成有关联性的操作时会非常麻烦。例如登录->添加购物车->下单->结算->支付,这系列操作都要知道用户的身份才行。但服务器不知道这些请求是有关联的,每次都要问一遍身份信息。
对于无状态的问题,解法方案有很多种,其中比较简单的方式用Cookie技术。
Cookie通过在请求和响应报文中写入Cookie信息来控制客户端的状态。相当于,在客户端一次请求后,服务器会下发一个装有客户信息的「小贴纸」,后续客户端请求服务器的时候,带上「小贴纸」,服务器就能认得了。
2.明文传输
明文意味着在传输过程中的信息,是可方便阅读的,通过浏览器的F12控制台或Wireshark抓包都可以直接肉眼查看,为我们调试工作带了极大的便利性。但是这正是这样,HTTP的所有信息都暴露在了光天化日下,相当于信息裸奔。在传输的漫长的过程中,信息的内容都毫无隐私可言,很容易就能被窃取,比如里面有你的账号密码信息。
3.不安全
HTTP比较严重的缺点就是不安全:
a.通信使用明文(不加密),内容可能会被窃听。比如,账号信息容易泄漏;
b.不验证通信方的身份,因此有可能遭遇伪装。比如,访问假的淘宝、拼多多;
c.无法证明报文的完整性,所以有可能已遭篡改。比如,网页上植入垃圾广告,视觉污染;
HTTP的安全问题,可以用HTTPS的方式解决,也就是通过引入SSL/TLS层,使得在安全上达到了极致。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。