作一个开源的小程序登陆模板(Token)

作一个开源的小程序登陆模板(Token)

先了解下SSOgit

对于单点登录浅显一点的说就是两种,一种web端的基于Cookie、另外一种是跨端的基于Token,通常想要作的都优先作Token吧,我的建议,由于后期扩展也方便哦。github

小程序也是呢,作成token的形式是较好的。web

流程图
作一个开源的小程序登陆模板(Token)数据库

一、启动服务小程序

二、小程序初次加载app.js校验token,使用code去换取tokenapi

三、检测User信息是否存在code,不存在则注册新用户,最后返回对应用户Id缓存

四、将随机Token与UserId一块儿存入Redis中app

五、返回Token信息,小程序存于缓存中,做为api请求的认证凭证框架

这个流程思路对什么后台语言都是通用的。maven

具体实现
本文的环境主要是作SpringBoot的,全部对于其余框架可能没有很好的兼容。

直接上代码弄起来吧!

首先是开源的话,咱们须要肯定某些东西是必定要配置的,不能写死。那么我写了两个Config类来获取application.yml中的数据,不一样用户能够配置他们的参数。

作一个开源的小程序登陆模板(Token)
我这边了以上的参数做为组件中的可配置,其实部分能够做为默认的,不过暂时没有改了,若是你像要使用就是暂时都是必选的

项目目录

作一个开源的小程序登陆模板(Token)

config包中的就是对配置参数的读取。

utils包是存放一个Http的请求工具。

最核心的就是咱们的WechatTemplate类了。

根据业务,咱们须要如下几个方法:

根据小程序传递来的code获取openid

根据openid,咱们能够和数据库对接获得用户id并生成本身Token

还有校验Token,是否存在

Maven包

接着打包发到Maven中央仓库中,生成本身的maven包

作一个开源的小程序登陆模板(Token)

作一个开源的小程序登陆模板(Token)
如何使用?

我在Github项目中,作了Demo演示。

https://github.com/UncleCatMySelf/wechat-login

你须要作的就是注入模板,调用方法

作一个开源的小程序登陆模板(Token)

作一个开源的小程序登陆模板(Token)

相关文章
相关标签/搜索