美文网首页
session、cookie、token的区别

session、cookie、token的区别

作者: ZMRWEGo | 来源:发表于2018-12-12 11:11 被阅读0次

    由于http协议是无状态的,为减轻客户端和服务器之间登录验证的麻烦,于是有了session和cookie这类玩意。

    session和cookie

    什么是session呢,客户端在第一次进行登录验证时,服务器会从数据库中查询对应的账号和密码,若匹配成功,则生成一个针对于此客户端的sessionID,(其本身应该是由过期时间的),将此SessionID发送给客户端。客户端可以存储到本地的cookie中,下一次就可以带着cookie信息直接访问,而不需要进行登录验证了。

    Token

    token又是什么呢?其实sessionID也是Token的一种实现方式,但是业界常用的还是比如像JWT这种的验证方式。
    这里有关于JWT的详细介绍(https://www.cnblogs.com/yuanrw/p/10089796.html
    ),它的优点在于服务器不许要进行存储,只需要进行解密验证就行了,相当于是利用计算能力代替了存储空间。
    token的组成为header+payload+signature。其中signature是对前两个字符串进行的签名。
    优缺点:
    JWT的优点:

    • 安全性高,防止token被伪造和篡改

    • 自包含,减少存储开销

    • 跨语言,支持多种语言的实现

    • 支持过期,发布者校验

    JWT的注意事项:

    • 消息体可以被base64解密为明文

    • 不适合存放大量信息

    相关文章

      网友评论

          本文标题:session、cookie、token的区别

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