博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
浅析cookie和session
阅读量:6411 次
发布时间:2019-06-23

本文共 1549 字,大约阅读时间需要 5 分钟。


title: 浅析cookie和session tags:

  • session
  • 浏览器
  • cookie categories: 工作日志 date: 2012-08-25 18:18:56

关于cookie和session的区别:

通常意义上的cookie指的是利用客户端的技术在计算机用户的文件夹下存储的文件,又名硬盘cookie,一般来说是有上限的。我的cookie是存在D:\Documents and Settings\qixiaobo\Local Settings\Temporary Internet Files下面,命名规则是cookie:[用户名]@[网站],打开后可发现通常是经过md5编码的。并且它的换行符在windows识别为乱码,表示服务器应该是Linux平台。(windows换行符是\r\n 而Linux换行符是\r)

而session,又名内存cookie,一般而言是指存放在服务器上的,当用户访问某个网站,网站服务器为用户分配一个Session ID,一般的表现形式为JsessionID,并且也是以cookie的形式存放在客户端,但是他的生命周期就是浏览器进程。也就是说当该浏览器进程被关闭后,重新打开后的浏览器访问同一个网站的分配到的session ID将不是同一个session ID。当cookie被禁用后,编码人员应当考虑到这种情况,应该利用Java提供的方法重写每一个链接。因为此时浏览器无法提供cookie给服务器,所以按照HTTP的无状态,应当无法知道该用户的信息。但是当利用了重写技术后,可以将session ID附加到每一个链接后面,以此来确定用户的信息。

一般的购物网站,如果用户是未注册会员,应当也会记录用户的信息,此时虽然用户用的是session,但是程序员会将用户的session回写回cookie,也就是将cookie的setMaxAge设置为有效的长时间。也更加说明了session的表现形式是cookie。

关于cookie和session的安全:

一般的记住客户信息有如下几种方式:

1.浏览器记住,这是个大浏览器厂商在对自己浏览器功能的增强,非Java Web程序员所能够利用的。

2.普通程序,一般是将用户名,密码写在Properityies文件或者ini文件或者xml文件中。

3.利用cookie,将用户信息直接回写给客户端,并且大部分的网站都提供了该方式,通常的变现形式如下:

两周内免登录就是指的是将信息利用cookie技术回写至客户端。

并且百卓的搜索中的最近搜索就是利用cookie来保存的,一旦禁用cookie将无法使用该功能。

4.利用session,如上图,如果两周内免登录不勾选上,表示是利用session技术记住用户信息,一旦浏览器关闭了后重新打开,用户信息依旧是需要输入的。

总结:

正因为cookie是以文件的形式写给浏览器,所以被许多人所诟病。表明其是可修改的,有部分人可以利用技术修改cookie达到自己不付费或者少付费的目的。并且cookie会暴露一个人的隐私等。

但是session确实不太方便,因为session的生命周期是浏览器进程,而通常人们访问某个网站都不是一次性的,而每次都要输入各种信息也比较繁琐。

因此有人发明了所谓的替代方案,将用户信息保存在某个服务器里,而用户只需要记住一个用户名和密码即可,称为主密码。大名鼎鼎的LastPass就是这样一款基于Chrome和Firefox的插件,但是实质上依旧是将客户信息保存起来,一旦服务器被别人所控制,还是会造成用户信息的丢失。

就目前的互联网来说,主流仍然是利用cookie和session一起来保存用户的信息。并不会说只采用一种。

附:

转载地址:http://kzkra.baihongyu.com/

你可能感兴趣的文章
编程学习初体验(5. 如何自学编程)(2)
查看>>
思科ISR G1与ISR G1C的区别
查看>>
利用perl提取web配置文件中的域名对应的路径
查看>>
Centos5上安装JRE和LUMAQQ
查看>>
关于监控工具的主动发起性能测试
查看>>
我的友情链接
查看>>
OpenSSL学习(十六):基础-指令rand
查看>>
KeyMob致力于打造国内领先的移动广告平台
查看>>
路由选路原则
查看>>
jvm 学习(一)
查看>>
JavaScript简介
查看>>
SQL Server附加数据库拒绝访问解决方法汇总
查看>>
SM2算法原理及实现
查看>>
RHCA教材翻译计划
查看>>
js-小括号在不同场合下的作用
查看>>
我的友情链接
查看>>
kvm中虚拟机的硬盘扩容
查看>>
Android (Launch Mode) 四种启动模式
查看>>
透视学理论(二)
查看>>
Dubbo/HSF在Service Mesh下的思考和方案
查看>>