首页 > 其他分享 >Cookie和Session的区别

Cookie和Session的区别

时间:2023-09-24 18:23:14浏览次数:27  
标签:cookie 存储 浏览器 区别 Session Cookie 服务器

在工作中,我们经常会遇到Cookie和Session这两个概念。对于它们的区别,也是面试中被问到的高频题目。因此,在本文中将简要介绍一下Cookie和Session之间的区别。

 

存储位置:Cookie存储在客户端(浏览器),而Session存储在服务器端。

 

安全性:cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,考虑到安全应当使用session。

 

服务器压力:session会在一定时间内保存在服务器上。当访问增多,会比较占用服务器的性能, 考虑到减轻服务器性能方面,应当使用COOKIE。

 

存储方式:Cookie中只能保存ASCII字符串,而Session中可以保存任意类型的数据,甚至Java Bean乃至任何Java类、对象等。

 

生命周期:Cookie可以设置为长期有效,而Session会随会话窗口关闭而失效。

 

浏览器支持:Session的运行依赖Session id,而Session id是存在Cookie中的,如果浏览器禁用了Cookie,Session也会失效

 

存储大小:Cookie保存数据<=4KB,一个站点最多保存20个Cookie,而Session并没有上限,取决于服务器的能力和具体的使用场景。

 

跨域支持:Cookie支持跨域名访问,Session不支持跨域名访问

标签:cookie,存储,浏览器,区别,Session,Cookie,服务器
From: https://www.cnblogs.com/52Herze/p/17726379.html

相关文章

  • Linux是什么?它与Windows有什么区别?
    前言本文将讲解Linux是什么、它的应用领域、未来、优缺点以及它与Windows的区别。一、Linux是什么?Linux是一种自由的、开放源码的类Unix操作系统。目前存在着许多不同的Linux系统,但它们都使用了Linux内核。Linux可安装在各种计算机设备中,从手机、平板电脑、路由器和视频游戏控制台,......
  • Oracle process/session/cursor/tx/tm的简单学习
    Oracleprocess/session/cursor/tx/tm的简单学习Oracle的部署模式Oracle安装时有专用模式和共享模式的区别共享模式(Sharedmode):在共享模式下,会话可以同时读取数据库的数据,多个会话可以并发地进行读取操作。这意味着多个会话可以共享相同的数据快照,并且彼此之间不会阻塞。......
  • 栈和堆的区别、FreeRTOS 中的任务栈
    栈和堆的区别、FreeRTOS中的任务栈01 堆和栈的概念堆功能堆是一块用于动态分配内存的区域,用于存储程序运行时动态创建的对象。堆的大小可以在程序运行时动态调整。特点堆的分配和释放是由程序员手动控制的。堆的分配和释放顺序的任意的,不需要遵循先进先出的原则......
  • 微信小程序 catch:tap bind:tap 的区别
    这二个都是点击事件,一个是阻止冒泡:catch:tap,bind:tap会向上冒泡。一般场景: 一个列表:1、点击行,会弹出相关详情信息,2、点击行中的按钮会执行相关的操作。 点按钮会出来二个窗口,按钮向上冒泡了,二个事件都被执行,所以会执行二次。......
  • HTTP安全响应头配置之Set-Cookie
    Cooke请求头对应Cookie字段、响应头对应Set-Cookie字段建议安全设置的cookie值如下Set-Cookie:<key>=<value>;Expires=<expriesDate>[;domain=domain][;path=path];Secure;HttpOnly;SameSite=strictvalue:一般是键值对expires:表示会在xxx时间之后失效(浏览器不会再发送给服务器......
  • MTK联发科MTK6795/MT6795T/MT6795M核心板参数区别对比介绍
    联发科MT6795处理器是专门为高端智能手机打造的SoC,也是联发科首款支持2K屏幕的64位真八核4GLTE解决方案。它采用了ARM的八核Cortex-A53架构,主频最高达2.2GHz,支持2100万摄像头,支持LTECat.4网络,采用28nm制程。GPU方面:MT6795搭载PowerVR的G6200系列;内存支持方面:MT6795支持双通道LPDD......
  • 说说Hashtable 与 HashMap 的区别
    1.出生的版本不一样,Hashtable出生于Java发布的第一版本JDK1.0,HashMap出生于JDK1.2。2.都实现了Map、Cloneable、Serializable(当前JDK版本1.8)。3.HashMap继承的是AbstractMap,并且AbstractMap也实现了Map接口。Hashtable继承Dictionary。4.Hashtable中大部......
  • [Java]BigDecimal与Double的区别和使用场景
    BigDecimal与Double的区别和使用场景背景在项目中发现开发小组成员在写程序时,对于Oracle数据类型为Number的字段(经纬度),实体映射类型有的人用Double有的人用BigDecimal,没有一个统一规范,为此我在这里总结记录一下。一般说到BigDecimal与Double,绕不开的就是金融或电商行业,毕竟涉及......
  • vue中created和mounted区别
    在Vue.js中,created和mounted都是生命周期钩子函数,用于在组件不同的生命周期阶段执行代码。它们的主要区别如下:1.created钩子函数:2.created在组件实例被创建后立即调用。此时组件的实例已经被创建,并且组件的数据观测(dataobservation)和事件机制已经初始化完成。3.created......
  • 全面分析 Vue 的 computed 和 watch 的区别
    全面分析Vue的computed和watch的区别 一、computed介绍computed用来监控自己定义的变量,该变量在data内没有声明,直接在computed里面定义,页面上可直接使用。//基础使用{{msg}}<inputv-model="name"/>//计算属性computed:{msg:function(){retur......