一、业务场景
用户扫描公众号的二维码,实现登录当前平台。
若未关注公众号,则关注后触发登录;若已关注,则直接登录。
登录时通过union_id判断用户是否在系统注册,若未注册则跳转到注册页面或提示未注册。
二、微信公众号准备
注意,此功能使用的接口,需要公众号类型为服务号才支持!
开发阶段,可使用微信提供的公众号测试号来联调,扫码登录即可。
三、涉及到微信公众号的接口
- 获取 Access token,这个是必备的接口,跟此功能无关
- 生成带参数的二维码,这个是微信生成公众号二维码图片链接的接口
- 接收事件推送,这个是每次用户扫码后微信通知我们服务的接口,会携带用户的union_id,open_id,订阅动作(首次订阅、已订阅、取消订阅),二维码的唯一参数(可生成二维码时自定义)
四、springboot项目中实现
1、添加微信依赖。
<dependency>
<groupId>co