首页 > 试题广场 >

有关cookie和session的描述,下面错误的是?

[单选题]
有关cookie和session的描述,下面错误的是? 
  • cookie数据存放在客户的浏览器上,session数据放在服务器上。
  • session是针对每一个用户的,变量的值保存在服务器上,用一个sessionID来区分是哪个用户session变量
  • 保存这个session id的方式可以采用cookie
  • 只要关闭浏览器,session就消失了
推荐
D
1.如果不设置过期时间,则表示这个cookie生命周期为浏览器会话期间,只要关闭浏览器窗口,cookie就消失了。
2.session机制是一种服务器端的机制,服务器使用一种类似于散列表的结构(也可能就是使用散列表)来保存信息。但程序需要为某个客户端的请求创建一个session的时候,服务器首先检查这个客户端的请求里是否包含了一个session标识-称为session id,如果已经包含一个session id则说明以前已经为此客户创建过session,服务器就按照session id把这个session检索出来使用(如果检索不到,可能会新建一个,这种情况可能出现在服务端已经删除了该用户对应的session对象,但用户人为地在请求的URL后面附加上一个JSESSION的参数)。
3.恰恰是由于关闭浏览器不会导致session被删除,迫使服务器为seesion设置了一个失效时间,当距离客户端上一次使用session的时间超过这个失效时间时,服务器就可以认为客户端已经停止了活动,才会把session删除以节省存储空间。

编辑于 2015-01-19 21:30:21 回复(0)
Session是由应用服务器维持的一个服务器端的存储空间,用户在连接服务器时,会由服务器生成一个唯一的SessionID,用该SessionID 为标识符来存取服务器端的Session存储空间。而SessionID这一数据则是保存到客户端,用Cookie保存的,用户提交页面时,会将这一 SessionID提交到服务器端,来存取Session数据。这一过程,是不用开发人员干预的。所以一旦客户端禁用Cookie,那么Session也会失效。
服务器也可以通过URL重写的方式来传递SessionID的值,因此不是完全依赖Cookie。如果客户端Cookie禁用,则服务器可以自动通过重写URL的方式来保存Session的值,并且这个过程对程序员透明。
可以试一下,即使不写Cookie,在使用request.getCookies();取出的Cookie数组的长度也是1,而这个Cookie的名字就是JSESSIONID,还有一个很长的二进制的字符串,是SessionID的值。
Cookie是客户端的存储空间,由浏览器来维持。
发表于 2014-11-14 14:53:17 回复(0)
答案:D
Session保存在服务器端,cookie保存在客户端
关闭浏览器会自动删除回话级别的cookie,但是Session存储在服务器端,不会被删除。

发表于 2015-01-17 19:34:01 回复(0)
Session保存在服务器端,cookie保存在客户端
关闭浏览器会自动删除回话级别的cookie,但是Session存储在服务器端,不会被删除。
发表于 2016-06-23 09:56:39 回复(0)
D:session保存在服务器,浏览器关不关,讲真和他关系不大
发表于 2015-08-21 16:57:35 回复(0)
答案:D
Session保存在服务器端,cookie保存在客户端
关闭浏览器会自动删除回话级别的cookie,但是Session存储在服务器端,不会被删除。
发表于 2017-04-11 21:12:24 回复(0)
C 选项谁能解释一下?谢谢大神们
发表于 2016-12-29 13:06:13 回复(1)
Session是由应用服务器维持的一个服务器端的存储空间,用户在连接服务器时,会由服务器生成一个唯一的SessionID,用该SessionID 为标识符来存取服务器端的Session存储空间。而SessionID这一数据则是保存到客户端,用Cookie保存的,用户提交页面时,会将这一 SessionID提交到服务器端,来存取Session数据。这一过程,是不用开发人员干预的。所以一旦客户端禁用Cookie,那么Session也会失效。 
服务器也可以通过URL重写的方式来传递SessionID的值,因此不是完全依赖Cookie。如果客户端Cookie禁用,则服务器可以自动通过重写URL的方式来保存Session的值,并且这个过程对程序员透明。 
可以试一下,即使不写Cookie,在使用request.getCookies();取出的Cookie数组的长度也是1,而这个Cookie的名字就是JSESSIONID,还有一个很长的二进制的字符串,是SessionID的值。 
Cookie是客户端的存储空间,由浏览器来维持
发表于 2016-08-16 08:22:24 回复(0)
cookie就相当于外用硬盘,暂时记录信息,可删除,session存在于内存中,不会由于退出就消失
发表于 2016-08-02 17:20:59 回复(0)
1、cookie如果不设置过期时间,那么生命周期为浏览器会话期间,否则即使生命周期一直到过期时间为止
2、session保存在服务器端,当浏览器发送http请求时并且服务器需要为此使用session时,请求体中可能会有cookie,服务端检查cookie中是否含有session id,如果没有则需要为客户端分配一个session id,然后创建相应session。如果cookie中有session id,那么则调用对应session,不再重新创建。
3、服务端的session同样可以设置过期时间,当客户端长时间没有对客户端访问,服务端会消除session,直到下次访问会重新创建。
发表于 2016-04-05 16:21:53 回复(0)
D
发表于 2015-01-04 13:00:26 回复(0)