最近在做记账小程序,涉及到用户授权登录,因为官方要回收 获取用户头像 昵称 接口权限。
于是再想有什么好的方案吗,于是自己想了一个方案就是 只获取用户的 openid 作为唯一标识,头像,昵称,都随机生成,因为记账吗,没必要一定要用户的头像和昵称,只要可以唯一标识用户就好啦。。。
方案想好了那就开始搞吧,,
小程序的app.js 里面封装了一个静默登录接口,同时封装了一个 判断是否登录的函数。
在每个需要登录授权的页面中 onShow 或者 onLoad 中 进行 全局登录判断函数调用,如果没有登录 则调用登录接口 去静默登录,登录成功后就进行回调函数。然后各自页面在进行后续业务逻辑处理。拿首页举个例子。。。。
这样保证每个页面都是 授权登录执行的,且 用户几乎无感知。这个是在客户端层面单独判断的。
还有一层是 token失效了,或者token错误的情况下,接口响应拦截的地方 会返回 某个未登录的状态码,这时候需要获取当前页面,然后清除token ,在重新跳转到当前页面,这样就又执行了 静默登录的逻辑了。
这样一个静默登录基本就完成了。。。
在看看后台怎么实现的吧,(php示例)
后台的头像 是默认 做了12个头像 然后采用随机取数 给与注册用户默认头像。
昵称也则在网上随便找个昵称生成函数,这样 就实现了 随机头像,随机昵称的业务逻辑了。
这样就 完整行程了一个 静默授权登录,的小程序登录 闭环。。。。。
看看小程序效果吧:::
欢迎一块讨论:luz-zhou

点赞!