Session和cookie的区别

Session和cookie是网络编程中很重要的两个东西,先说一下本质。
Session相当于在服务器的内存中每一个浏览器去连接它,它都会分配一个空间来单独存放与这两个浏览器的信息。就相当于什么呢?举个例子:小明现在要找同学聊天,小明和同学加了好友,比如微信:里面有小明和同学两个人单独的聊天记录,,这个就相当于session。但又不一样,聊天记录可以一直存在,session当浏览器断开之后,比如打开Google,如下图:
在这里插入图片描述

这时候Google与产生联系的服务器就已经创建session。就好像是一个空间,内存中分配的空间。只要你一直访问,session就一直存在;当关闭Google搜索之后,断开连接之后呢,Google那边的session一般有保存的时间,这就要看服务器是怎么配置的了,一般的保存时间是30分钟左右,时间到了之后就会把session清空。意思就是当两个人停止聊天了,session就没必要一直打开。

Cookie又是啥呢?cookie在这里是数据记录的格式,而不是曲奇饼干哈!它和session刚好相反,session是在服务器端,而cookie就在浏览器端。如下图:
在这里插入图片描述

在浏览器中,比如登陆用户信息,Cookie需要浏览器那边返回生成cookie的要求,就把数据放在浏览器,浏览器就以cookie的形式把数据存到浏览器内部。当下次再登陆的时候,浏览器就会把上次保存好的cookie发送给服务器的session,服务器就会解析cookie,拿到登陆的信息,然后就自动登陆了,是不是很方便,这样就不用每次登陆的时候输密码输账号等。Cookie也是有时限的,比如有的用户长时间没有登陆,它不能自动登陆了。因为cookie已经失效,被浏览器删除掉。打开浏览器,浏览器就会检查过期的cookie并删除。Cookie一般以加密的形式保存在浏览器的,但是也有被盗取的风险。被盗取是很危险的,因为涉及到用户的账号密码之类的信息。

你会发现cookie和session都是存放个人信息的,只是它们存放的位置不同。在网络编程中,经常使用session。cookie的使用相对较少,一般在登陆的时候使用。Session的使用如下:
在这里插入图片描述

在做项目过程中还可以使用session存放验证码字符串,这是实现的代码。大家在网络编程过程中经常使用session和cookie,就能体会其中的含义啦。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值