1.立项由来
前一段时间写了一个定时任务管理系统的项目 SiliSchedule
具体情况请移步这里
Blazor练手项目 SiliSchedule定时任务管理系统
开发时碰到到用户注册真的很麻烦,于是想到是否能通过别的方式实现快速注册登录,这很容易就想到了接入第三方登录。第三方登录无外乎Github、QQ、微信等等,于是就找了下这几种方案的实现。
其实接入微信是最好的,毕竟微信的受众群体很大,但是接入微信登录的条件比较苛刻,需要认证的企业资质的微信开放平台账号才行,像我们这种打工人上哪整这玩意儿。于是只能寻找替代方案吶。
最后功夫不负有心人,就有网友发现可以通过小程序进行曲线救国,调用小程序的生成小程序码的接口生成带参的小程序码,然后扫码进行具体的逻辑处理,OK,有点子有解决方案,这不说干就干嘛,QuickAuth这个项目就出来了
2.项目介绍
当然,独乐乐不如众乐乐,有了这个点子,我们这个QuickAuth项目也可以提供给第三方开发者,让更多的开发者方便快捷的将微信扫码登录接入到自己的项目中
首先这个项目分三块
- 小程序
- 后端API
- 项目管理后台
首先小程序,这个我之前也写过简单的项目,运用第三方开发组件库(我这边现在使用的是LinUI),实现起来并不复杂,主要还是界面好不好看,我这搞后端的,设计出来能凑活用就行,然后咱们的小程序主要包含几块功能:主页、登录授权、授权历史、接入应用列表,应用推荐举报等。各位看官可以扫码体验一波
接着是后端API,这块我给分成了两部分,一部分是暴露给外部调用的api,主要有:获取二维码,查询二维码状态,用户信息解密三个接口,详细接口信息请查看接入文档 QuickAuth接口文档 。还有一部分是支持小程序端运行的api,这个接口比较多就不一一列举了。这块用的技术还是 .net 6,不过 构建api项目用的是C# 10中的新特性 Minimal Api
再就是项目管理后台了,这块主要是提供给用户创建和配置接入应用的信息的,另外还顺便提供官网展示和接入文档功能。这块用的技术还是和SiliSchedule
项目一样的 Blazor Server,毕竟最近写这个习惯了,小项目还是可以随便信手拈来的。来来来,链接在这里QuickAuth官网
3.项目现状
目前该项目已经上线,QuickAuth官网 和 SiliSchedule 两个项目都已经接入扫码登录功能了,有需要的友友们可以尝试为自己的项目接入QuickAuth扫码登录功能
4.接入应用和插件
- QuickAuth官网(https://qauth.cn)
- SiliSchedule(https://sc.wixy.cn)
- Ultron.Blog(https://blog.wixy.cn)
- Typecho插件(https://github.com/mr-wixy/QuickAuthLogin)
- WordPress插件(https://github.com/mr-wixy/QuickAuthLogin-WP)
5.后续计划
- 项目的正常维护迭代
- 开发
typecho(2022/01/27开发完成)和WordPress(2022/02/07开发完成)的QuickAuth登录插件
6666,真的爱了
大佬缪赞了~