微信公众号:PHP在线
之前的 OAuth 系列 中我们的目标都是获取 Token ;
那这个 Token 是个什么样的呢?
RFC 并没有明确规定;
不过业内比较常见的方案是使用 JWT ;
JWT 是 JSON Web Token 的缩写;
要学习 JWT 我们可以拿 session 作为参照物;
在传统开发中我们在用户登录后会创建一个 session 文件 xxx ;
用户的 id 等信息就存储在 xxx 文件中;
接着会在 Set-Cookie 中返回 xxx 作为 session_id ;
以后前端请求的时候就会在 cookie 中携带 xxx ;
服务器端根据 xxx 从文件中读取用户信息;
从上面的流程我们可以看出要验证一个用户需要有两步;
传递 session 文件名
根据文件名从文件中获取用户信息
那我们可不可以不传文件名;
服务器端直接返回用户信息组成的认证字符串;
以后前端就把认证字符串发送给服务器端;
服务器端从认证字符串中获取用户信息;
这样只需要一步就可以验证用户;
不需要 session 文件的参与了;
但是这里面有两个问题需要解决;
怎么用字符串保存用户信息