session和cookie

Session和Cookie

什么是会话跟踪技术

会话跟踪是Web程序中常⽤的技术,⽤来跟踪⽤户的整个会话。保持对⽤户会话期间的数据管理。常⽤的会话跟踪技术是Cookie与Session。
Cookie通过在客户端记录信息确定⽤户身份,Session通过在服务器端记录信息确定⽤户身份。

1. 什么是cookie

Cookie是客户端(⼀般指浏览器)请求服务器后,服务器发给客户端的⼀个辨认标识,保存在客户端,当客户端再次向服务器发送请求时,会携带着这个辨认标识,服务器就可以通过这个标识来识别客户端的身份或状态等。

Cookie的作⽤:跟踪会话,记录⼀次会话中(即Session,⼀次会话可能会有多次请求,当然也可以有多个Cookie来跟踪不同的信息)的信息,这样服务器就会知道⽤户的状态,⽐如有没有登录成功,付款时购物⻋中的东⻄等,就相当于贴在客户端脑⻔上的纸条,浏览器看不到,但服务器看得到。

2. 什么是Session

Session是另⼀种记录客户状态的机制,不同的是Cookie保存在客户端浏览器中,⽽Session保存在服务器上。
客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上,这就是Session。
客户端浏览器再次访问时只需要从该Session中查找该客户的状态就可以了。
如果说Cookie机制是通过检查客户身上的“通⾏证”来确定客户身份的话,那么Session机制就是通过检查服务器上的“客户明细表”来确认客户身份。
Session相当于程序在服务器上建⽴的⼀份客户档案,客户来访的时候只需要查询客户档案表就可以了。

Session和Cookie的区别

  1. Cookie数据保存在客户端(浏览器),Session数据保存在服务器端。
  2. Session是由应用服务器维持的一个服务器端的存储空间,用户在连接服务器时,会由服务器生成一个唯一的SessionID,用该SessionID作为标识符来存取服务器端的Session存储空间。而SessionID这个数据是由保存在客户端中的Cookie,用户提交页面时,会将这一SessionID提交到服务器端,来存取Session数据。在生成SessionID这一过程,不是程序员干预的。也就是说,如果在客户端(浏览器)禁用了Cookie,那么Session数据也会丢失。
  3. Cookies是属于Session对象的一种。但又不同,Cookies不会占用服务器资源,它是存在客户端内存或者一个Cookie的文本文件中。而Session是会占用服务器资源。所以尽量不要使用Session,而使用Cookies。Cookies是保存在本机上的,但是其中信息的完全可见性且易于本地编辑性,往往可以引起很多的安全问题。但是目前很多著名的站点也都用Cookie。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值