简介:
在计算机通信网络中,网络协议是必不可少的。其中,超文本传输协议(HTTP)是一种允许超文本标记语言(HTML)文档从网络服务器传输到客户端浏览器的通信协议。
但是,HTTP协议是无状态的。一旦数据交换完成,客户端和服务器之间的连接将被关闭,需要建立新的连接来再次交换数据。这意味着服务器无法跟踪用户通过连接登录网站后的一系列动作。这一系列动作被称为对话,比如浏览商品并添加到购物车中购买。
会话跟踪是Web程序中常见的技术,用于跟踪用户的整个会话。常用的会话跟踪技术是Cookie和会话。在这个博客中,我们来看看这两种技术的区别。
Cookie:
Cookie实际上是一小段文本信息。当客户端请求服务器时,如果服务器需要记录用户的状态,比如用户信息,它使用响应对象向客户端浏览器发出一个Cookie。客户端将保存Cookie。当浏览器再次请求网站时,浏览器将所请求的网站地址和Cookie一起提交给服务器。服务器检查Cookie以识别用户状态。工作原理如下:
1.客户端首次向服务器发起请求
2.服务器准备一个cookie,并设置要缓存在cookie中的内容
3.服务器将请求响应结果与cookie一起反馈给客户端
4.客户端处理请求响应并读取cookie
5.客户端再次向服务器发送请求
6.服务器检查传输的cookie,识别状态,并返回响应结果
会话:
会话是记录客户状态的另一种机制。不同之处在于,Cookie保存在客户端浏览器中,而会话保存在服务器上。
当客户端浏览器访问服务器时,服务器以某种形式将客户端信息记录在服务器上。当客户端浏览器再次访问时,它只需要从会话中查找客户端的状态。
每个用户都访问服务器来建立会话,那么服务器如何识别用户的唯一身份呢?事实上,当用户与服务器建立连接时,服务器会自动为其分配会话Id。工作原理如下:
1.客户端首次向服务器发起请求
2.服务器创建一个新的会话,生成一个sessionid,并将请求的信息放入会话
3.服务器将生成的sessionid放入cookie中,并将其与响应一起返回给客户端浏览器
4.客户端再次访问网页,并将浏览器中存储的会话id发送给服务器
将sessionid与所有会话进行比较,找到相应的sessionid,并取出内容
Cookie和会话之间的区别:
结合Cookie和Session的工作原理,很容易看出Cookie和Session的区别。
1.cookie数据存储在客户端的浏览器中,会话数据存储在服务器上。
2.Cookies不是很安全。其他人可以分析存储在本地的cookie并欺骗cookie。考虑到安全性,应该使用会话。
3.会话将在服务器上保存一段时间。当访问次数增加时,会占用服务器的性能。cookie应该用来降低服务器的性能。
4.单个cookie保存的数据不能超过4K,许多浏览器限制一个站点最多保存20个cookie。
5.登录信息等重要信息可以存储为会话,其他信息如果需要保留的话可以存储在cookie中。
1.《session和cookie的区别 Cookie与Session的区别》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。
2.《session和cookie的区别 Cookie与Session的区别》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。
3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/caijing/969763.html