首页 > 手机 > 系统 > Session,session

Session,session

来源:整理 时间:2022-04-07 16:15:26 编辑:手机 手机版

如何深刻理解JavaWeb中session和cookie?

如何深刻理解JavaWeb中session和cookie

简单来说一个是把用户数据保存在用户端(电脑、手机等),一个是保留在服务器端(云端)。本文由齿轮易创原创,未经许可禁止转载。如有技术开发需求请联系齿轮易创头条号。Cookie是针对每一个网站的信息,每一个网站只对应一个,其它网站不能访问,这个文件是保存在客户端的,每次你打开相应网站,浏览器会查找这个网站的cookies,如果有就会将这个文件起发送出去。

cookies文件的内容大致包含这些信息如用户名,密码,设置等。由服务器发送出来以存储在浏览器上,从而下次这位访客又回到该网络服务器时,可从该浏览器读回此信息。Session是针对每一个用户的,session机制是一种服务器端的机制。只有客户机访问,程序就会为这个客户新增一个session。session里主要保存的是用户的登录信息,操作信息等。

Session直接翻译成中文比较困难,一般都译成时域。在计算机专业术语中,Session是指一个终端用户与交互系统进行通信的时间间隔,通常指从注册进入系统到注销退出系统之间所经过的时间。以及如果需要的话,可能还有一定的操作空间。具体到Web中的Session指的就是用户在浏览某个网站时,从进入网站到关闭浏览器所经过的这段时间,也就是用户浏览这个网站所花费的时间。

因此从上述的定义中我们可以看到,Session实际上是一个特定的时间概念。Cookie和Session的关系当客户端请求创建一个session的时候,服务器首先检查客户端请求里是否已包含了一个session标识session id,如果已包含一个session id则说明以前已经为此客户端创建过session,服务器就按照session id把这个session检索出来使用。

如果客户端请求不包含session id,则为此服务器创建一个session并且生成一个与此session相关联的session id。保存这个session id的方式可以采用cookie,Session类似于”云端”存储。一个Session的概念需要包括特定的客户端,特定的服务器端以及不中断的操作时间。

优缺点cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗(cooke是透明可见的),考虑到安全应当使用sessionsession会在一定时间内保存在服务器上,当访问增多,会比较占用你服务器的性能。考虑到减轻服务器性能方面,应当使用COOKIE单个cookie在客户端的限制是3K,就是说一个站点在客户端存放的COOKIE不能3K。

搞不懂Session、Cookie、Token有何关系和区别?

搞不懂Session、Cookie、Token有何关系和区别

文章TAG:SessionsessionSessionsession

最近更新