最近在看这本《图解HTTP》,巩固下基础。书中讲述了HTTP协议的基本原理,并以图解的方式,形象的画出其工作方式。目前刚看完第九章,想分享一下这几章的内容。好了,废话不多,昊料开始~
01 HTTP
说到http就想到他的大哥,https。我们都知道https比http要安全(http协议中没有加密机制,但可以通过和SSL(Secure Socket Layer,安全套接层)或TLS(Transport Layer Security,安全传输层协议)的组合使用,加密http的通信内容。
用SSL建立安全通信线路之后,就可以在这条线路上进行http通信了。与SSL组合使用的HTTP被称为https(http Secure,超文本传输安全协议)或HTTP over SS
除了安全性以外。http还有一些瓶颈,也为解决这些瓶颈。那些牛批的大佬们相处很多解决方法。
http存在的瓶颈
Ajax
Ajax(Asynchronous JavaScript and XML,异步JavaScript与XML技术)是一种有效利用JavaScript和DOM(Document Object Model,文档对象模型)的操作,以达到局部Web页面替换加载的异步通信手段。
核心技术是基于XMLHttpRequest的接口。通过JS调用服务端的部分请求,就能在页面中更新局部页面
Comet
服务器响应延迟应答技术,模拟实现服务器向客户端推送(Server Push)功能。常规请求中,服务器接收后会立即返回响应。使用这项技术,也为达到推送功能的效果,Comet会将响应置于挂起状态并在此时检查服务器,如果服务器有更新,则立即返回给客户端。
Comet解决了响应更新的问题,但是连接时效变长,在资源上有了一定的浪费
SPDY(speedy)
SPDY持续开发状态中的协议。在应用层与传输层之间增加会话层。控制对数据的流动。SPDY仍然使用了SSL保证安全性
说白话就是在现有的http协议中追加了一些新的功能,把这些新的功能归类到了一个会话层中。新功能包含:
谷歌在2015年9月的chrome版本中弃用了该协议。改成支持HTTP2.0协议。后续逐渐被HTTP2.0取代了
WebSocket
浏览器与服务器之前的全双工通信。简言之就类似打电话,双方均可以给对方发送数据。其建立链接主要是在http3次握手之后,再次发起一次请求。主要特点:
02 认证
认证也就是我们常说的身份证明,所处章节为第九章,这一张主要是围绕了HTTP认证、SSL认证、表单认证等做出了相关解释。
基本概念
认证也就是表明客户端身份的一项技术。在访问客户端时,为了数据安全性。所以需要这项技术来保证数据安全性。基本的认证信息如下:
HTTP认证
HTTP的认证方式有以下四种
BASIC认证
BASIC认证(基本认证)是从HTTP/1.0就定义的认证方式。即便是现在仍有一部分的网站会使用这种认证方式。是Web服务器与通信客户端之间进行的认证方式。
基本认证存在一定的安全性以及不灵活性。由于采用编码格式为Base64的方式进行编码处理。不需要增加任何附加信息就可以解码。所以存在很高的安全性问题。
DIGEST
HTTP1.1中出现的一种方式。这种认证应用了一种叫质询的一种校验方式。就是一方发起一个质询码,另一方接收到质询码以后进行响应码的生成。最后将响应码发送给初始方,进行认证
与BASIC认证方式一样。存在一定的灵活性以及安全性问题
SSL客户端认证
在请求中使用双因素认证,多重保障了安全性。
双因素认证指的是客户端的证书认证以及客户端用户密码认证。即确认了客户端的操作计算机,也确认了客户端操作人。
在SSL中,证书是认证过程中的第一道关卡。
表单验证
表单验证主要是由代码层面所谓,不存在协议中。
表单验证常用到的安全验证方法就是存储cookie以及session。
本期读书分享就先到这里了。各位大佬。我们下期见~