认识cookie和session

本文深入探讨了Cookie和Session的工作原理、特点及其在Web开发中的作用。Cookie用于在HTTP无状态协议中识别用户,但数据不安全且存在大小限制。Session则依赖Cookie,提供更安全的会话管理,数据存储在服务器端,但服务器内存消耗较大。两者的主要区别在于数据存储位置、安全性、容量限制和生命周期。理解它们的差异对于优化用户体验和保障数据安全至关重要。
摘要由CSDN通过智能技术生成

一、cookie

 1.cookie产生
        识别用户:用来客户端和服务器端进行会话

        HTTP是无状态协议,这就回出现这种现象:当你登录一个页面,然后转到登录网站的另一个页面,服务器无法认识到。或者说两次的访问,服务器不能认识到是同一个客户端的访问,这就让你重复登录,所以产生了cookie。

        cookie:第一次访问一个服务器,不携带cookie,这时服务器在响应(response)下行HTTP报文中,命令浏览器携带cookie信息;浏览器再访问同一个域的时候,将把cookie信息携带到请求(request)上行HTTP请求中,从而实现了HTTP模拟有了状态。

        每个特定域名下面的cookie数量是有限制的,fixfox是50个,Opera是30个,chrome和safari是没有限制的

2.cookie的特点
        ①cookie是不加密的 ②cookie是可以被篡改和攻击 ③cookie大小受到限制

3.Cookie的分类
       ① 会话级别Cookie:所谓会话级别Cookie,就是在浏览器关闭之后Cookie就会失效。

       ② 持久级别Cookie:保存在硬盘的Cookie,只要设置了过期时间就是硬盘级别Cookie。

二、session

1.session的产生
        由于cookie明文等一些不足所以产生了session session依赖cookie,就是利用cookie,实现的“会话”,因此当cookie被禁用,session也无法使用。 session比cookie不一样在哪里呢? session会下发一个秘钥(cookie)(乱码),客户端每次访问都携带这个秘钥,那么服务器如果发现这个秘钥吻合,就能够显示这个用户曾经保存的信息。 任何语言中,session的使用,是“机理透明”的,也就是让你感觉不到这事儿和cookie有关

2.session特点和使用
        ①session是加密的 ②都是req对象
Session存在于服务器的内存中,如果服务器重启就会丢失session同时需要重新登录

3.session的工作方式
        通过URL传递SessionID

        通过Cookie传递SessionID

        通过SSL传递SessionID

        通过隐藏表单传递SessionID

三、cookie和session的区别

7.cookie和session不同
       ① cookie数据存放在客户的浏览器上而session数据放在服务器缓存中。

        ②cookie是明文,不安全,别人利用cookie可以被篡改和攻击;而session存放服务器缓存中并且加密的,其他用户看不到。

        ③session会在一定时间内保存在服务器上。当用户访问增多,会比较占用你服务器内存,考虑到减轻服务器性能方面,使用cookie。

        ④单个cookie保存的数据不能超过4K,如果cookie的内容超过4K的话,那么调用的时候就会返回一个空的字符串;session的密钥(cookie),可以对应无限大的数据。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值