cookie和session有哪些区别?
一、cookie和session的区别
1、数据存放位置不同
cookie数据存放在客户的浏览器上,session数据放在服务器上。
2、安全程度不同
cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗,考虑到安全应当使用session。
3、性能使用程度不同
session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,考虑到减轻服务器性能方面,应当使用cookie。
4、数据存储大小不同
单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点非常多保存20个cookie,而session则存储与服务端,浏览器对其没有限制。
延伸阅读:
二、什么是cookie
cookie是浏览器支持的一种本地存储机制。一般由服务端设置生成,在响应请求时被自动存储在浏览器中。
cookie一般是加密存储的,但是存储本地,很难确保数据不被非法访问,不怎么安全。cookie中不适合存储敏感信息,如密码。
哪些信息需要存储在cookie中由服务器决定,在http协议中通过服务器返回的响应报文头中,有个Set-Cookie来指示浏览器或其他客户端在本地保存cookie信息。
cookie保存在客户端的目的是为了下一次访问网站时可以直接取出来发送到服务器,http协议的请求报文头中有cookies专门用于存放这个信息。以便客户端将cookie信息发送给服务器。
cookie可以实现跨页面全局变量,cookie可以跨越同一个域名下的多个网页,但是不能跨域名使用。同一个网站中的所有页面共享一个cookie,可以设置有效期
三、什么是session
Session是一种记录客户状态的机制,不同的是Cookie保存在客户端浏览器中,而Session保存在服务器上。客户端浏览器访问服务器的时候,服务器把客户端信息以某种形式记录在服务器上。这就是Session。客户端浏览器再次访问时只需要从该Session中查找该客户的状态就可以了。
如果说Cookie机制是通过检查客户身上的“通行证”来确定客户身份的话,那么Session机制就是通过检查服务器上的“客户明细表”来确认客户身份。Session相当于程序在服务器上建立的一份客户档案,客户来访的时候只需要查询客户档案表就可以了。
以上就是关于cookie和session的区别的内容了,希望对大家有帮助。

猜你喜欢LIKE
相关推荐HOT
更多>>
在Scala中用def重写和val重写父类有什么区别?
一、在Scala中用def重写和val重写父类的区别在Scala中,子类可以用def或val重写父类的方法。这两种方式有以下区别:def关键字定义的方法可以被...详情>>
2023-10-11 22:26:27
java中continue和break区别?
一、java中continue和break区别break的定义在Java中,break具有三个用途。名列前茅个它用于终止switch语句中的case,第二个用于终止包含break的...详情>>
2023-10-11 16:58:22
java web 与jsp的区别?
一、java web 与jsp的区别1、jsp服务于java web开发,javaweb是使用java语言进行web系统开发。web系统开发现在主流的是MVC的三层架构,而jsp就...详情>>
2023-10-11 14:49:53
进程和线程的区别是什么?
一、进程和线程的区别1、概念不同进程:一个程序对一个数据集的动态执行过程,是分配资源的基本单位。线程:一个进程内的基本调度单位。线程的...详情>>
2023-10-11 13:52:13热门推荐
Python的int取整和//整除有什么区别?
沸在Scala中用def重写和val重写父类有什么区别?
热for和foreach区别?
热form表单和ajax的区别?
新error和exception区别?
循环程序结构和分支程序结构结构有哪些区别?
MPG后缀和MP4后缀有哪些区别?
SQL Server中,ANY与ALL有什么区别?
DataExchange和RTB Exchange 有哪些区别?
jquery和javascript的区别?
Java开发工程师和后端开发工程师有哪些区别?
Java 中字节流与字符流的区别?
java中continue和break区别?
error 和 exception的区别?
技术干货






