配色: 字号:
新梦想干货分享——传说中的HTTP协议(二)
2019-07-04 | 阅:  转:  |  分享 
  
新梦想干货分享——传说中的HTTP协议(二)各位亲,好久不见,长肉肉了没有,学习了没有,说好的新梦想干货分享今天终于弄出来了!!!上次我们说
过了HTTP协议的历史,看到了HTTP协议的演进过程。我们今天重点说的是HTTP协议的1.1版本。HTTP协议用于客户端和服务端之
间的通信。HTTP协议能够非常明确的区分哪端是客户端,哪端是服务端。那什么是客户端,什么是服务端呢?两台机器之间进行通信,请求访问
文本、图片或视频等资源的是客户端。提供文本或者图片等资源的就是服务端。HTTP协议规定通信一定是从客户端开始的,客户端发出请求信息
,服务端响应该请求并返回响.HTTP协议的特点:特点一:简单快速使用HTTP协议时,客户向服务器请求服务,只需传送请求方法和路径。
每种方法规定了客户与服务器联系的类型不同。因为它比较简单,所以速度就比较快啦!HTTP请求的方式有很多:特点二:灵活现在主流的HT
TP1.1版本可以允许传输的数据类型有很多种,数据类型由请求头中的content-type字段进行标记。这一点在上一篇文章中已经提
到过了,就不再重复了。特点三:无连接所谓无连接的意思是每次连接只处理一个请求,服务器处理完一个请求,在收到客户端的应答后就会断开连
接。一个页面有文字还有很多的大小图片和其它的内容。脑补一个画面:当你刷朋友圈的时间,朋友们发那么多的九宫格图片,每处理一个图片,就
要重新连接一次服务器,处理一次连接如果花0.5S。如此,你只怕会放弃看朋友圈的习惯了。特点四:无状态HTTP协议自身不保留之前所有
通信的请求和响向的信息,这么做的目的是为了快速的处理大量的事务。但是随着web技术和业务的发展,不保留状态是非常麻烦的事情。比如
:你打开淘宝进行购物的时候,登陆完后。当你点击进入其它付款页时,http协议并没有保留你的登陆状态,又要求你重新登陆。如此重复操
作。就会让用户使用web系统时感到脑袋痛了。为了解决这个问题,引入了Cookie技术,这样就可以管理状态了。Cookie机制co
okie??饼干??才刚过完年,不要尽想着吃。Cookie是在?HTTP?协议下,服务器或脚本可以维护客户工作站上信息的一种方式。
Cookie?是由?Web?服务器保存在用户浏览器(客户端)上的小文本文件,它可以包含有关用户的信息。Cookie技术通过在请求
和响应报文中写入?Cookie?信息来控制客户端的状态。Cookie?会根据从服务器端发送的响应报文内的一个叫做?Set-Cook
ie?的首部字段信息,通知客户端保存?Cookie。上图表示抓取的是第一次访问网站的请求头部和响应头的内容,很明显示在请求头中没
有cookie信息,而在响应头中则出现了set-cookie字段。当下次客户端再往该服务器发送请求时,客户端会自动在请求报文中加
入Cookie值后发送出去。服务器端发现客户端发送过来的?Cookie?后,会去检查究竟是从哪一个客户端发来的连接请求,然
后对比服务器上的记录,最后得到之前的状态信息。上图中进行第二次请求时,则在请求头中出现了cookie,与第一次响应头中要求要客户
端保存的字段是一致的。都是一个PHPSESSID的字段值。SESSION机制不知道有没有人好奇这个PHPSESSID是什么东西呢
?刚刚说过的cookie是用来保存用户状态的一种机制,但是cookie是可以在客户端被人为禁止使用的。这个时候用户信息可能没有办法
被保存下来。那就只能让服务器端来保存用户状态,这就可以使用session机制了,它是一种在服务器端保存状态的机制。当用户使用客户端
发起一个请求时,服务端就会去检查这个请求中是否包含了session标识---也就是sessionID。如果包含了,则说明之前客户
端已经创建过请求,服务端则去文件或者数据库中把sessionid检索出来进行使用,如果检索不到,则需要创建一个新的session
id了。如果客户端没有sessionid,则需要为这个请求创建一个sessionid。Sessionid有个很大的特点是
没有规律,不会重复,这样很难被模仿。Sessionid一般的时候会被存在cookie中的。如果cookie被禁用了,可以在url
地址中被带回给服务端。至于session机制更深的了解,大家可以再去找相关资料进行了解哦,或者下次可以写一篇session相关的文章也行啊。下次再见哦!!!
献花(0)
+1
(本文系chenyewer首藏)