码迷,mamicode.com
首页 > 其他好文 > 详细

cookie和session

时间:2020-02-12 14:37:10      阅读:56      评论:0      收藏:0      [点我收藏+]

标签:name   domain   特殊   时间   常见   默认   document   关闭浏览器   网络上传   

1、什么是cookie和session?
  cookie是网站用来辨别用户身份,进行会话跟踪,存储在本地终端上的数据。
  session(会话)起来本含义是指有始有终的一系列动作和消息。在web中,session主要用来在服务器端存储特定用户对象会话所需要的信息。
 2、cookie和session产生的原因:
  http协议是一个无状态协议,在特定操作的时候,需要保存信息,进而产生了cookie和session。
 3、cookie原理:
  由服务器来产生,浏览器第一次请求,服务器发送给客户端进而保存。
  浏览器继续访问时,就会在请求头的cookie字段上附带cookie信息,这样服务器就可以识别是谁在访问了。
  
  但是cookie存在缺陷:
   1、不安全--本地保存,容易被篡改。
   2、大小受限,本身最大4kb。
   
  cookie虽然在一定程度上解决了‘保持状态’的需求,但是我们希望有一种新的技术可以克服cookie缺陷,这种技术就是session。
 4、session原理:
  session在服务器保存。----解决安全问题。
  问题来了:服务器上的session,但是客户端请求发送过来,服务器如何知道session_a,session_b,到底和那个请求对应。
  所以为了解决这个问题:cookie就作为这个桥梁。在cookie有一个sessionid字段,可以用来表示这个请求对应服务器中的哪一个session。
  禁用cookie,一般情况下,session也无法使用。特殊情况下可以使用url重写技术来使用session。
   url重写技术:将sessionid拼接到url里面。
   
  session的生命周期:服务器创建开始,有效期结束(一般网站设定都是大约30分钟左右),就删除。
 5、常见误区:打开浏览器中的一个网页,浏览器关闭,这个网页的session会不会失效?
  不会,服务器到底删除不删除session,由session的生命周期。有效期结束,就会被删除。
 6、cookie的字段
  (1)Name : 该的名称。一旦创建, 该名称便不可更改。
  (2)value : 该cookie 的值。如果值为Unicode 字符, 需要为字符编码。如果值为二进制数据, 则需要使用BASE64 编码。
  (3)Domain : 可以访问该cookle 的域名。例如, 如果设置为.zhihu.com , 则所有以zhihu.com 结尾的域名都可以访问该cookie。
  (4)MaxAge : 该cookie 失效的时间, 单位为秒, 也常和Expires一起使用, 通过它可以计算出其有效时间。Max Age 如果为正数, 则该cookie 在Max Age 秒之后失效。如果为负数, 则关闭浏览器时cookie 即失效, 浏览器也不会以任何形式保存该cookie 。
  (5)Path : 该cookie 的使用路径。如果设置为/path/ , 则只有路径为/ path / 的页面可以访问该cookie 。如果设置为/ , 则本域名下的所有页面都可以访问该cookieo
  (6)Size 字段: 此Cookie 的大小。
  (8)HTTP 字段: cookie 的httponly 属性。若此属性为true , 则只有在HTTP 头中会带有此Cookie 的信息, 而不能通过document.cookie 来访问此Cookie。
  (9)Secure : 该cookie 是否仅被使用安全协议传输。安全协议有H TTP s 和SSL 等, 在网络上传输数据之前先将数据加密。默认为false。
 7、会话cookie和持久cookie
 会话cookie:Max Age 为负数,则关闭浏览器时cookie 即失效,保存在内存中的cookie。
 持久cookie:Max Age 如果为正数, 则该cookie 在Max Age 秒之后失效。保存在硬盘上的cookie
 持久化:将内存中数据持久化到硬盘上。其实就是数据保存到文件或者数据库中。
 内存主要的作用就是由于速度快,启动应用软件或者程序的时候,就会分配一定内存空间作为该程序运行内存。
 内存一旦荡机(断电),就会被清空。
 
 序列化:将对象持久化到硬盘中。

cookie和session

标签:name   domain   特殊   时间   常见   默认   document   关闭浏览器   网络上传   

原文地址:https://www.cnblogs.com/caiweijian/p/12298887.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!