1. json web token
1.1. JWT的组成
一个JWT实际上就是一个字符串,它由三部分组成,头部、载荷与签名。
1.2. 载荷(Payload)
- iss: 该JWT的签发者
 - sub: 该JWT所面向的用户
 - aud: 接收该JWT的一方
 - exp(expires): 什么时候过期,这里是一个Unix时间戳
 - nbf(Not Before): 开始生效时间,这里是一个Unix时间戳
 - iat(issued at): 在什么时候签发的
 
{
    "iss": "John Wu JWT",
    "iat": 1441593502,
    "exp": 1441594722,
    "aud": "www.example.com",
    "sub": "jrocket@example.com",
    "from_user": "B",
    "target_user": "A"
}
1.3. 头部(Header)
- alg 签名算法
 
{
  "typ": "JWT",
  "alg": "HS256"
}
1.4. 签名(签名)
通过密钥加密载荷和头部生成的字符串
1.5. logout
一般用redis来缓存这些已经登出但没有失效的token