session和cookie的区别是啥?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了session和cookie的区别是啥?相关的知识,希望对你有一定的参考价值。

session是存储在服务器端的,cookie是存储在客户端的,所以session的安全性要高于cookie。
再者,我们获取的session里的信息是通过存放在会话cookie里的sessionId获取的。
因为session是存放在服务器里的,所以session里的东西不断增加会增加服务器的负担,我们会把一些重要的东西放在session里,不太重要的放在客户端cookie里。
cookie分为两大类,一个是会话cookie和持久化cookie,他们的生命周期和浏览器是一致的,浏览器关了会话cooki也就消失了,而持久化会存储在客户端硬盘中。
参考技术A

Session和Cookie的定义以及区别

1、session保存在服务器,客户端不知道其中的信息;cookie保存在客户端,服务器能够知道其中的信息。

2、session中保存的是对象,cookie中保存的是字符串。

3、session不能区分路径,同一个用户在访问一个网站期间,所有的session在任何一个地方都可以访问到。而cookie中如果设置了路径参数,那么同一个网站中不同路径下的cookie互相是访问不到的。

4、session在用户会话结束后就会关闭了,但cookie因为保存在客户端,可以长期保存。

扩展资料

session的工作原理:

(1)当一个session第一次被启用时,一个独一的标识被存储于本地的cookie中。

(2)首先使用session_start()函数,php从session仓库中加载已经存储的session变量。

(3)当执行PHP脚本时,通过使用session_register()函数注册session变量。

(4)当PHP脚本执行结束时,未被销毁的session变量会被自动保存在本地一定路径下的session库中,这个路径可以通过php.ini文件中的session.save_path指定,下次浏览网页时可以加载使用。

参考技术B 回答

您好,很高兴回答您的问题,正在整理,请稍后

您好,很高兴回答你的问题,cookie数据保存在客户端,session数据保存在服务器端。简 单的说,当你登录一个网站的时候,如果web服务器端使用的是session,那么所有的数据都保存在服务器上面,客户端每次请求服务器的时候会发送 当前会话的sessionid,服务器根据当前sessionid判断相应的用户数据标志,以确定用户是否登录,或具有某种权限。由于数据是存储在服务器 上面,所以你不能伪造,但是如果你能够获取某个登录用户的sessionid,用特殊的浏览器伪造该用户的请求也是能够成功的。 另外Cookies是属于Session对象的一种。但有不同,Cookies不会占服务器资源,是存在客服端内存或者一个cookie的文本文件中;而“Session”则会占用服务器资源。所以,尽量不要使用Session,而使用Cookies。但是我们一般认为cookie是不可靠的,session是可靠地,但是目前很多著名的站点也都以来cookie。有时候为了解决禁用cookie后的页面处理,通常采用url重写技术,调用session中大量有用的方法从session中获取数据后置入页面。 希望能帮助到您,谢谢啦,祝您生活愉快!如果觉得回答满意可以帮忙点个赞~

参考技术C

Session和Cookie的区别

1、数据存储位置:cookie数据存放在客户的浏览器上,session数据放在服务器上。

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



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

4、数据大小:单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。

5、信息重要程度:可以考虑将登陆信息等重要信息存放为session,其他信息如果需要保留,可以放在cookie中。

参考技术D Cookie是把用户的数据写给用户的浏览器;
Session技术把用户的数据写到用户独占的Session中;
Session对象由服务器创建,开发人员可以调用request对象的getsession方法得到session对象。

简述 cookies 和 session 的区别

1、cookie 和 session 的区别是:cookie数据保存在客户端,session数据保存在服务器端;

2、两个都可以用来存私密的东西,同样也都有有效期的说法,区别在于session是放在服务器上的,过期与否取决于服务器的设定,cookie是存在客户端的,过期与否可以在 cookie 生成的时候设置进去;

①.cookie数据存放在客户的浏览器上,session数据放在服务器上;

②.cookie不是很安全,别人可以分析存放在本地的cookie并进行cookie欺骗,如果主要考虑到安全应当使用session;

③.session 会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能,如果主要考虑到减轻服务器性能方面,应当使用cookie;

④.单个cookie在客户端的限制是3K,就是说一个站点在客户端存放的cookie不能3K;

⑤.所以将登录信息等重要信息存放为session;其他信息如果需要保留,可以放在cookie中;

3、cookie 和 session 的共同之处在于:cookie 和 session 都是用来跟踪浏览器用户身份的会话方式;

4、cookie 是一种发送到客户浏览器的文本串句柄,并保存在客户机硬盘上,可以用来在某个WEB站点会话间持久的保持数据;

5、session其实指的就是访问者从到达某个特定主页到离开为止的那段时间。Session其实是利用Cookie进行信息处理的,当用户首先进行了请求后,服务端就在用户浏览器上创建了一个cookie,当这个Session结束时,其实就是意味着这个Cookie就过期了。

以上是关于session和cookie的区别是啥?的主要内容,如果未能解决你的问题,请参考以下文章

会话控制

cookie和session

session和cookie的前后的操作

cookie是啥 cookie指的是啥

Cookie/Session的机制与安全

Cookie/Session的机制与安全