session和cookie的区别,以及两种机制的发展背景史,你再不懂cookie,我就死给你看
让人恶心的cookie的创始人,终于找到了,1993年的那个卢姥爷!-------卢- 蒙特利.发明的。慢慢往下看,你会更理解session和cookie。
一:HTTP无状态协议和socket双向通信
无状态协议是指协议对务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。 Http协议不像建立了socket连接的两个终端,双方是可以互相通信的,http的客户端只能通过请求服务器来获取相关内容或文件信息。
http协议这种特性有优点也有缺点,优点在于解放了服务器,每一次请求“点到为止”不会造成不必要连接占用,缺点在于每次请求会传输大量重复的内容信息。
二:HTTP的发展,是一个不断自我完善的过程
1.web刚开始,只是简单的页面浏览,查什么给看什么就好了。没有交互。
2.后来需要交互,需要登录等等。就广义的session了。广义的session是理念,是一种会话控制的战略追求。
3.一直用狭义的session数据来控制回话,网站访问量增大,每个用户的session都保存在服务器,服务器受不了了,1993年就搞出来cookie技术。cookie是实战,是广义session控制的战术实现。
4.也可以url重写,实现广义session控制。是一种区别于cookie的解决方案
5.狭义的session保存在服务端,cookie保存在客户端。广义session本身是一种追求。哎,分不清,广义狭义,会让小白很懵逼的。
三:到底是先有的cookie,还是先有的session
1.cookie的背景。追溯到1993年
Cookie的复数形态是Cookies, 英文的意思是小甜饼,小饼干. 类型为小型文本文件, 指某些网站为了辨别用户身份储存在用户本地中断上的数据. 是前网景公司的员工 卢-蒙特利在1993年3月发明的,最初定义与RFC 2109 当前使用最广泛的Cookie标准不是RFC中定义的任何一个,而是在网景公司制定的标准上进行扩展后的产物.
网景是网景通信公司(Netscape Communications Corporation)的常用简称。网景通信公司曾经是一家美国的计算机服务公司,以其生产的同名网页浏览器Netscape Navigator而闻名。1998年11月,网景被美国在线(AOL)收购。
网景这个公司就是那个netscape浏览器的公司,一开始挺厉害,后来要整一个通过浏览器操作的系统, 微软发现了,一看这个不行啊,你这玩意儿看着挺狠, 万一发展起来了,我不就难受了吗. 之后微软就想, 你要整个系统, 我就去整个浏览器,专门刚你. 之后弄出个IE, 不但免费,推广手段还狠,IE浏览器就跟着windows绑定着装, 人们就喷它, 但是没办法啊, 用多了用着用着习惯了. 这下网景就不行了, 后来想了个辙, 免费了旗下所有软件以后的版本, 还把netsscape Communicator 4.0 的源代码开放了,但是没什么特别大的用, 被美国在线98年收购了, 最后还和微软打了反垄断官司,胜诉了.但是03年7月15日美国在线把网景解散了.这公司基本就退出了历史舞台,剩下了网景门户网站还在.
再来说说 卢- 蒙特利 ,他是1994年第一届国际万维网大会宣布选入万维网名人堂的六人之一, 堪萨斯大学毕业,15年的时候加入了JetInsight.看这位的工作经历,
2.session的背景
百度半天,查了一百多个搜索结果,百度百科也查了,还是查不到,session机制的提出时间。不过,可以确定,现有session理念,后来才有session的实现。
坑逼百度!坑人学SEO,坑人做网站MIP改造,坑人的搜索结果!
3.还有一些其他的一些解决方案,比如token,jwt等等,这些都是道与术的区别。
还是那句话,web不死,session长存!
查了半天资料,知乎,csdn,百度百科,等等,总结的,一定对你有所帮助。这里没有太多细节,但是把思路弄清楚,知道为什么这样,我觉得更重要!