【登陆与令牌】小程序用户怎么拿到token的?

一般来讲 获取令牌token 的逻辑以下:
image.png
客户端拿着帐号和密码,向服务器兑换token令牌,用于后续系列操做。html


如下是一个简单的权限验证模型:
image.png
服务器要作三件事:
1.验证客户端有token,便是否合法;
2.验证token是否过时,便是否有效;
3.Token是否有对应的(访问下单接口的)权限。数据库


小程序客户端为例:

小程序为每一个用户分配一个Code码,用户登陆小程序便可获取,我的服务器获取到用户的Code,拿着Code以及appid和secret等信息向小程序服务器 换取 用户的openid和session_key(这里咱们不关心session_key,它是用于解密获取userid的)。啥,为啥不关心?那仍是解释下useridopenid的不一样吧,同一个用户对于不一样的小程序有不一样的openid,可是userid却始终相同,因此userid能够用于关联两个小程序,通常状况下不会被使用。
openid对于用户来讲是惟一标识且没有失效期,因此不适合返回客户端,很不安全的。所以生成有保质期的Token令牌,为了减轻数据库的压力(不然频繁验证令牌合法,一直读取查询数据库吃不消的),将Token和用户信息存储在缓存中,能够加快访问速度;可是有得有失,缓存的使用与数据库相比会更加麻烦。

小程序携带令牌,在缓存中校验Token,若可以经过,服务器返回小程序端想要的接口。
至于怎么校验,包括服务器怎么获取到code而且生成token和用户信息绑定的,下次揭晓 (^▽^)小程序

相关文章
相关标签/搜索