cookie和session的不同

  一直没有弄明白cookie和session到底有什么不同,直到今天上网找了一些资料,查看来一下,恍然大悟!

  cookie主要是是通过客户端的记录信息来确定访问者身份,session则是通过在服务器上记录客户端信息来确定访问者身份的。这种想法是由于HTTP是无状态的连接,服务器从网络连接上无法得知客户端的身份,所以才用了这种机制,进行记录。

  那访问不同的网址时,cookie怎么知道该用哪些值进行访问呢?实际上,浏览器可以根据域名的不同进行选择,到底携带哪个网址的cookie.

  解决了这个疑惑,那么cookie是根据什么来判断存在时间的有效期的呢?实际上,cookie的maxAge决定了cookie的有效期。当maxAge>0时,cookie会在maxAge秒后消失,在消失之前,cookie是被保存到了客户的本地硬盘中;当maxAge<0时,cookie只在浏览器的本窗口或者本窗口的子窗口有效,浏览器关闭后,cookie消失,这种生命期为浏览器会话器的cookie,称为会话cookie,此时的cookie是被保存到了浏览器的内存中;当cookie=0时,就表示要删除cookie,通过设置该cookie的及时失效实现删除cookie.,失效的cookie会被浏览器从cookie本地或者浏览器内存中删除.

  session相当于在服务器上建立了一份用户的档案,用户访问时,查看档案即可。

这份档案,一般会存放在服务器的内存中,为了获取到更高的存取速度。但是,由于每个用户都会有一个session,这样当大量用户访问时,肯能会导致服务器的内存溢出,为了防止内存溢出,服务器会把长时间内没有活跃的session进行删除,这个时间即为session的超时时间。

  Session生成后,只要用户继续访问,服务器就会更新Session的最后访问时间,并维护该Session。用户每访问服务器一次,无论是否读写Session,服务器都认为该用户的Session“活跃(active)”了一次。

  那么如果客户端开启2个不同的浏览器,session会一样的,答案是不一样的,会是2个不同的session.但是如果在本来的浏览器窗口,再次新建窗口,此时的窗口相当于子窗口,和父窗口有相同的cookie和session.

时间: 2024-09-30 10:43:50

cookie和session的不同的相关文章

cookie和session得区别

1.cookie 是一种发送到客户浏览器的文本串句柄,并保存在客户机硬盘上,可以用来在某个WEB站点会话间持久的保持数据. 2.session其实指的就是访问者从到达某个特定主页到离开为止的那段时间. Session其实是利用Cookie进行信息处理的,当用户首先进行了请求后,服务端就在用户浏览器上创建了一个Cookie,当这个Session结束时,其实就是意味着这个Cookie就过期了. 注:为这个用户创建的Cookie的名称是aspsessionid.这个Cookie的唯一目的就是为每一个用

学习日常笔记&lt;day11&gt;cookie及session

1.会话管理 1.1会话管理定义 会话管理:管理浏览器客户端和服务端之间的会话过程中产生的会话数据 域对象:实现资源之间的数据共享 request 域对象 context 域对象 1.2.会话技术 Cookie技术:会话数据保存在浏览器客户端中 Session技术:会话数据保存在服务器端 2.Cookie技术 2.1 特点 Session技术:会话数据保存在服务器端 2.2Cookie技术核心 Cookie类:用于存储会话数据 1)构造Cookie对象 Cookie(java.lang.Stri

Cookie和Session

会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份. 本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不能用Session. Cookie机制 Cookie技术是客户端的解决方案,Cookie就是由服务器发给客户端的特殊信息,而这些信息以文本文件的方式存放在客户端,然后客户端每次向

Django进阶(路由系统、中间件、缓存、Cookie和Session

路由系统 1.每个路由规则对应一个view中的函数 url(r'^index/(\d*)', views.index), url(r'^manage/(?P<name>\w*)/(?P<id>\d*)', views.manage), url(r'^manage/(?P<name>\w*)', views.manage,{'id':333}), 2.根据app对路由规则进行一次分类 rl(r'^web/',include('web.urls')), 1.每个路由规则对应

cookie、session、sessionid 与jsessionid

cookie.session.sessionid 与jsessionid,要想明白他们之间的关系,下面来看个有趣的场景来帮你理解. 我们都知道银行,银行的收柜台每天要接待客户存款/取款业务,可以有几种方案: 1. 凭借柜台职员的记忆:由收柜台职员来为每位顾客办理存款/取款业务,单凭职员的记忆力,要记到每位顾客的相貌,并迅速知道顾客当前的存款以及存取的次数,每次存取的金额是多少.---- 这种方式表示协议本身支持状态. 2. 使用存折的方式:职员把每个顾客的存款/取款的信息保存在存折上,然后交给顾

cookie、session、localStorage、sessionStorage区别

cookie.session 会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份. 本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不能用Session. cookie 1.1  Cookie机制 在程序中,会话跟踪是很重要的事情.理论上,一个用户的所有请求操作都应该属于同一个会话

Node Express 操作( Cookie 和 Session )

1, Cookie 操作, 需要安装 cookie-parser 依赖 => npm i cookie-parser -D 2, 基本使用 // 引入 express let express = require('express'); let cookieParse = require('cookie-parser'); // cookie 依赖 // 创建服务器 var server = express(); server.listen(80); // 响应请求 server.use(cook

http与cookie and session

1.HTTP是计算机通过网络进行通信的规则2.HTTP是一种无状态的协议(不建立持久的连接,服务端不保留连接的相关信息,浏览器发出请求和服务器返回响应是一个没有记忆的过程)3.一个完整的[HTTP请求]过程有7个步骤:1>建立TCP连接2>Web浏览器向Web服务器发送请求命令3>Web浏览器发送请求头信息4>Web服务器应答5>Web服务器发送应答头信息6>Web服务器向浏览器发送数据7>Web服务器关闭TCP连接 http请求:1.HTTP请求的方法或动作,p

cookie 与 session 的区别与联系

1,禁用cookie 后 seesion 还能用吗? cookie是保存在本地的,而seesion是保存在服务器上的.所以两者没有直接的关系,禁用cookie后seesion依然可以用. session的运行依赖于session id,而session id是存在cookie中的.也即,如果客户端禁用了cookie(每次HTTP请求的时候,客户端都会发送相应的Cookie信息到服务端.实际上大多数的应用都是用 Cookie 来实现Session跟踪的,第一次创建Session的时候,服务端会在H

cookie 和 session

会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话.常用的会话跟踪技术是Cookie与Session.Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份. 本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不能用Session. 1.1  Cookie机制 在程序中,会话跟踪是很重要的事情.理论上,一个用户的所有请求操作都应该属于同一个会话,而另一个用户的所有请求操作则应该属于另一个