一、准备工作:
1、注册微信开放平台账号
地址:https://open.weixin.qq.com/
2、申请开发者资质认证
账号中心->开发者资质认证
3、创建第三方应用
4、查看应用详情
得到:AppID
、AppSecret
和redirect_uri
(回调地址)。
二、微信扫码
微信开发官方文档:https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.html
1、生成二维码,获取code
- 后端服务需要生成一个带有特定参数的微信登录二维码链接。这个链接通常包含
appid
、redirect_uri
以及可能的state
等参数,用于标识请求来源和状态。 - 调用微信API生成二维码ticket,前端展示该二维码让用户扫描。
- 用户在微信客户端扫描二维码后,微信会引导用户进行授权操作。
- 授权成功后,微信将跳转至预先设定的
redirect_uri
,并在URL上附加code参数。
二维码链接:https://open.weixin.qq.com/connect/qrconnect?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
请求参数
返回参数
redirect_uri?code=CODE&state=STATE
2、通过code获取access_token和openid
请求地址:https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code
请求参数
返回参数
三、扫码完成检查(是否绑定微信)
1、数据表关系
2、绑定检查
① 直接根据查询 [system_social_user
]表,判断是否关联本系统
② 【未】关联本系统 User 的三方用户,需要在三方登录完成后,使用账号密码进行「绑定登录」,成功后记录到 [system_social_user_bind
]表中。
【已】关联本系统 User 的三方用户,在三方登录完成后,直接进入系统
3、绑定登录
【未】关联本系统 User 的三方用户需要输入账号密码进行绑定,若账号未注册,需要先去注册账号
进入系统
3、绑定登录
【未】关联本系统 User 的三方用户需要输入账号密码进行绑定,若账号未注册,需要先去注册账号