前后端分离认证的思路

419 阅读1分钟

「本文是今年日更计划第9篇文章」

前后端分离不同于传统的web服务,无法使用session,因此我们采用JWT这种无状态机制来生成token,大致的思路如下:

  1. 客户端调用服务端登录接口,输入用户名、密码登录,登录成功返回两个token,如下:
    1. accessToken:客户端携带这个token访问服务端的资源
    2. refreshToken:刷新令牌,一旦accessToken过期了,客户端需要使用refreshToken重新获取一个accessToken。因此refreshToken的过期时间一般大于accessToken。
  2. 客户请求头中携带accessToken访问服务端的资源,服务端对accessToken进行鉴定(验签、是否失效....),如果这个accessToken没有问题则放行。
  3. accessToken一旦过期需要客户端携带refreshToken调用刷新令牌的接口重新获取一个新的accessToken。