微信二维码授权web登录
2021-08-27 10:52:07 49 举报
登录查看完整内容
微信二维码授权web登录
作者其他创作
大纲/内容
微信后台
UnionID不存在
前端传入code到后台获取信息
UnionID存在
结束
发送手机号码和验证码
返回微信端是否同意授权页面
第三步,校验unionid
返回封装信息
1.如果当前输入的手机号码不存在数据库中,并且没有绑定该UnionID,则注册用户,保存UnionID和用户关系到数据库,更新授权信息(微信个人信息),最后跳转到主页;2.如果当前输入的手机号码存在在数据库中:---------------------------------------------------------------------------------------------场景一:判断该手机号码是否绑定了其它unionid,如果绑定,提示用户该手机号码已绑定了其它微信场景二:判断该手机号码是否绑定了其它unionid,如果没有绑定,则校验用户当前状态是有效、无效(或者已注销)------------------------------------- 2.1 如果用户状态是有效:则保存UnionID和用户关系到数据库,更新授权信息(微信 个 人信息),最后跳转到主页; 2.2 如果用户是无效(或者已注销),返回相应提示给用户。--------------------------------------3.其它情况---------------------------------------------------------------------------------------------场景一:如果手机号码不正确,返回提示给用户;场景二:如果短信校验不正确,返回提示给用户;
通过access_token和openid获取用户个人信息
如果数据库中没有这个UnionID和用户的绑定关系的数据,前端通过后端返回的封装信息,跳转到手机号码和短信验证页面,验证手机号码。
后台业务服务
通过code获取access_token
返回个人信息,含有unionid,redis存储
web端
第一种情况,unionid存在
准备工作网站应用微信登录是基于OAuth2.0协议标准构建的微信OAuth2.0授权登录系统。 在进行微信OAuth2.0授权登录接入之前,在微信开放平台注册开发者帐号,并拥有一个已审核通过的网站应用,并获得相应的AppID和AppSecret,申请微信登录且通过审核后,可开始接入流程。(至少提前一周配置)授权流程说明微信OAuth2.0授权登录让微信用户使用微信身份安全登录第三方应用或网站,在微信用户授权登录已接入微信OAuth2.0的第三方应用后,第三方可以获取到用户的接口调用凭证(access_token),通过access_token可以进行微信开放平台授权关系接口调用,从而可实现获取微信用户基本开放信息和帮助用户实现基础开放功能等。 微信OAuth2.0授权登录目前支持authorization_code模式,适用于拥有server端的应用授权。该模式整体流程为:1. 第三方发起微信授权登录请求,微信用户允许授权第三方应用后,微信会拉起应用或重定向到第三方网站,并且带上授权临时票据code参数;2. 通过code参数加上AppID和AppSecret等,通过API换取access_token;3. 通过access_token进行接口调用,获取用户基本数据资源或帮助用户实现基本操作。微信登录功能接口文档链接:https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.html
https://open.weixin.qq.com/connect/qrconnect?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=SCOPE&state=STATE#wechat_redirect
第二步,获取微信个人信息
校验手机号码
如果数据库中已经有这个UnionID和用户的绑定关系的数据,则校验用户当前状态是有效、无效(或者已注销)。--------------------------------------------------------------------场景一:用户是有效的,后台更新授权信息(微信个人信息),最后跳转到主页;场景二:用户是无效(或者已注销),返回相应提示给用户。
确认输入手机号码和验证码
校验unionid(看下面第三步)
用户
前端封装请求code链接
扫描二维码
返回网页授权二维码页面
第二种情况,unionid不存在
跳转回调到自己定义的redirect_uri(手机注册页面),携带code和state参数
第一步,获取code
返回access_token以及openid等
同意授权
拒绝授权关闭页面
点击微信授权登陆按钮
0 条评论
回复 删除
下一页