Cookie 和session浅了解
2017-03-23 10:24
399 查看
Refer http://www.jb51.net/article/40772.htm
http://www.cnblogs.com/shiyangxt/archive/2008/10/07/1305506.html
http://blog.csdn.net/fangaoxin/article/details/6952954/
http 是无状态的协议,cookie和session都是为了保持浏览器和服务器连接的连续性,不同的是cookie是存储在浏览器,而session是存储在服务器上。因此从安全性上来说,cookie要较session更差。因为客户端的其它程序是可接近,盗用,或篡改存储在硬盘上的cookies文件的。而session存储在自己的服务器上,不容易被其它程序所获取。从性能上来说,采用cookie保存会话的方式,使浏览器每次向服务器请求都需要在请求体中带上cookie,当cookie具有一定大小,且请求量很大时,会造成带宽的浪费而且影响性能。Session则是每次请求带上一个服务器返回的sessionid即可,sessionid的大小肯定是小于等于cookie的大小的。但是多个的请求,需要在服务器上存储多个客户端的数据,对于服务端的存储方面要求较高。从保持会话时长来说,cookie由于是客户端存储,所以可以设定存储时长,一般默认有效期是直到浏览器被关闭的时候,此时cookie的存储只在内存中。若设定存储时长maxAge为大于零的数,则其会以文件形式存储在硬盘上。并且会检测时间是否查过maxAge的设置,如未则一直有效。Session存储在服务器,其有效时长的配置是在服务器上。Session的生命周期一般是浏览器窗口关闭便结束,但是为了定期释放服务器的空间,减小存储压力,大多网站都会设定,会话处于非活动状态20或30分钟就会清除服务器上的session数据,此时即使浏览器的窗口并未关闭,再次请求时仍需重新生成session数据。从使用性来说,cookie的弊端在于其需要客户端支持cookie方式或打开cookie方式,大多数手机浏览器都不支持cookie.
Session的话,主要是当客户端访问的数据存储在不同的服务器上时,这个session数据共享问题。不过是说采用数据库的方式就好。
如此看,cookie和session皆有优劣,所以在平常的应用场景中都是结合使用。如,需要记住密码一段时间,则该用户名和密码或其它就可以已cookie的方式保存在客户端中。
http://www.cnblogs.com/shiyangxt/archive/2008/10/07/1305506.html
http://blog.csdn.net/fangaoxin/article/details/6952954/
http 是无状态的协议,cookie和session都是为了保持浏览器和服务器连接的连续性,不同的是cookie是存储在浏览器,而session是存储在服务器上。因此从安全性上来说,cookie要较session更差。因为客户端的其它程序是可接近,盗用,或篡改存储在硬盘上的cookies文件的。而session存储在自己的服务器上,不容易被其它程序所获取。从性能上来说,采用cookie保存会话的方式,使浏览器每次向服务器请求都需要在请求体中带上cookie,当cookie具有一定大小,且请求量很大时,会造成带宽的浪费而且影响性能。Session则是每次请求带上一个服务器返回的sessionid即可,sessionid的大小肯定是小于等于cookie的大小的。但是多个的请求,需要在服务器上存储多个客户端的数据,对于服务端的存储方面要求较高。从保持会话时长来说,cookie由于是客户端存储,所以可以设定存储时长,一般默认有效期是直到浏览器被关闭的时候,此时cookie的存储只在内存中。若设定存储时长maxAge为大于零的数,则其会以文件形式存储在硬盘上。并且会检测时间是否查过maxAge的设置,如未则一直有效。Session存储在服务器,其有效时长的配置是在服务器上。Session的生命周期一般是浏览器窗口关闭便结束,但是为了定期释放服务器的空间,减小存储压力,大多网站都会设定,会话处于非活动状态20或30分钟就会清除服务器上的session数据,此时即使浏览器的窗口并未关闭,再次请求时仍需重新生成session数据。从使用性来说,cookie的弊端在于其需要客户端支持cookie方式或打开cookie方式,大多数手机浏览器都不支持cookie.
Session的话,主要是当客户端访问的数据存储在不同的服务器上时,这个session数据共享问题。不过是说采用数据库的方式就好。
如此看,cookie和session皆有优劣,所以在平常的应用场景中都是结合使用。如,需要记住密码一段时间,则该用户名和密码或其它就可以已cookie的方式保存在客户端中。
相关文章推荐
- Token、Cookie、Session的认识了解
- PHP的Cookie、Session和跟Laravel相关的几点了解
- Cookie与Session基本知识了解
- 深入了解cookie 和session
- 深入理解HTTP协议(三)——深入了解篇Cookie和Session
- 带你了解session和cookie作用原理区别和用法
- php 会话控制(了解cookie与session之间的区别与联系)
- 了解Cookie和Session
- ASP.NET的Cookie和Session
- 利用session,cookie进行安全性控制
- php及codeigniter使用session-cookie
- node(4)express 框架 EJS模板,cookie, session的学习
- cookie与session的运作机制讲解
- cookie, sessionStorage and localStorage 之间的区别 与定义; 应用;
- 关于PHP中浏览器禁止Cookie后,Session能使用吗?
- Cookie和Session的工作原理及Cookie欺骗(一)
- 浏览器禁用cookie后php如何保持session会话-use_trans_sid机制
- APPlication,Session和Cookie
- ASP.NET企业开发框架IsLine FrameWork系列之十二--使用Session、Cookie与安全支持
- cookie、session、sessionid 与jsessionid