美文网首页
Session、cookie、token

Session、cookie、token

作者: 抬头挺胸才算活着 | 来源:发表于2020-05-26 12:06 被阅读0次

参考资料:
[1]. servlet中session的原理和使用
[2]. 彻底弄懂session,cookie,token

Session可以定长时间保存,并不是每次请求后就没有了。

服务器是如何实现一个session为一个用户浏览器服务的?

服务器创建session出来后,会把session的id号,以cookie的形式回写给客户机,这样,只要客户机的浏览器不关,再去访问服务器时,都会带着session的id号去,服务器发现客户机浏览器带session id过来了,就会使用内存中与之对应的session为之服务。

session对象的创建时机

在程序中第一次调用request.getSession()方法时就会创建一个新的Session,可以用isNew()方法来判断Session是不是新创建的。

session销毁时间

session对象默认30分钟没有使用,则服务器会自动销毁session,在web.xml文件中可以手工配置session的失效时间。

浏览器禁用Cookie后的session处理

解决方案:URL重写

session和cookie

  • 虽然cookie一般是配合session使用的,但实际上cookie的地位和session是一样的,都可以用来维持用户的状态,只不过一个放在客户端,一个放在服务端,cookie同样也可以保存很多数据。
  • cookie只是实现session的其中一种方案。虽然是最常用的,但并不是唯一的方法。禁用cookie后还有其他方法存储,比如放在url中
  • 现在大多都是Session + Cookie,但是只用session不用cookie,或是只用cookie,不用session在理论上都可以保持会话状态。可是实际中因为多种原因,一般不会单独使用
  • 用session只需要在客户端保存一个id,实际上大量数据都是保存在服务端。如果全部用cookie,数据量大的时候客户端是没有那么多空间的。
  • 如果只用cookie不用session,那么账户信息全部保存在客户端,一旦被劫持,全部信息都会泄露。并且客户端数据量变大,网络传输的数据量也会变大

cookie和token

cookie跟token很像,但是token没有太多的限制。

相关文章

网友评论

      本文标题:Session、cookie、token

      本文链接:https://www.haomeiwen.com/subject/uceknhtx.html