cookie和seesion的区别和联系
2024-09-06 22:39:26
今天来聊聊cookie和session的区别和联系.首先先确定一个各自的定义吧:
- cookies: 网站用于鉴别用户身份和追踪用户登录状态. 存在于浏览器端的一小段文本数据
- session: 中文称之为会话. 可以理解成一系列动作. 在web中. session是存在浏览器端用户储存用户的属性和配置信息. 这样在网页跳转时. 全局变量就会一直存在
浏览器中cookie和session的并行使用和生成过程: 比如在一个登录界面中. 浏览器访问网址. 一般会返回一个set-cookie. 浏览器会将该值存成本地的cookie数据. 在下一次访问时. 浏览器会自动将cookie的值携带并发送给网站的服务器. cookie中携带的session ID就会在服务器中找到对应的session来判断用户状态是否正常. 如果正常. 那么服务器就会返回给用户登录之后才能看到的信息, 如果不正常, 那么就会返回错误信息或者跳转至登录界面重新登录. session和cookie一个在浏览器端. 一个在服务器端. 二者需要相互配合才能实现登录效果.
常见误区: 在讨论session的机制时. 有人认为浏览器关闭. session就会对应被删除或消失. 其实这是个错误的说法:
其一是cookie在生成时服务器已经设置好了再浏览器中的有效时间expires/max_age. 到了一定时间. 服务器会自动认为用户结束了活动. 删除cookie对应的session以节约资源.
其二是服务器并不知道你是否关闭了浏览器. 所以不存在浏览器关闭导致session消失. 而恰恰是由于浏览器关闭并不会导致session被删除. 所以服务器设置了失效时间去回收session资源.
最新文章
- android图片验证码--自绘控件
- Uninstall from GAC In C# code
- asp.net mvc 缓存
- centos6.5下安装mysql
- <;a>;标签href属性与onclick事件
- Ueditor中增加迅雷下载支持
- 利用用户自己的server、tomcat下的解决iOS7.1企业应用无法安装应用程序 由于证书无效的问题
- Android之实战篇(三)
- SharePoint 2016 配置应用程序商店
- Docker系列一之基础快速入门企业实战
- final、finally和finalize的区别
- Mac环境下Vagrant的安装
- css 自制一些小特效
- winform 所遇
- 【原创】大数据基础之Benchmark(1)HiBench
- js 二分搜索树删除子节点
- 【转】工作中使用Trepn Power Profiler的应用总结
- 初识HTML和WEB标准
- ArrayList源码中EMPTY_ELEMENTDATA和DEFAULTCAPACITY_EMPTY_ELEMENTDATA的区别
- PoPo数据可视化周刊第3期 - 台风可视化
热门文章
- [题解] [AGC024F] Simple Subsequence Problem
- HandlerMethodArgumentResolver 自定义使用
- 【hexo博客搭建】将搭建好的hexo博客部署到阿里云服务器上面(下)
- spring boot 集成 rabbitmq 指南
- 【Unity Shader学习笔记】Unity基础纹理-法线贴图
- 网易数帆 Envoy Gateway 实践之旅:坚守 6 年,峥嵘渐显
- 优秀开源平台,前后端分离快速开发平台,一站式多端开发(PC+APP)
- python自动将新生成的报告作为附件发送并进行封装
- CabloyJS V3.2.0支持Socket IO
- ASP已老,尚能饭否?