以下为几类型微信登录的功能说明(基于OAuth2.0协议标准构建的微信OAuth2.0授权登录系统):
序号 | 类型 | 授权域/接口 | 用户侧使用流程 | 接入流程 |
---|---|---|---|---|
1 | App | 接入微信SDK,并调用snsapi_userinfo | (1)在App内选择使用微信登录 (2)拉起微信客户端,打开用户授权页,完成登录授权 | (1)注册微信开放平台(open.weixin.qq.com)帐号,并完成开发者资质认证 (2)申请【App移动应用】并审核通过后可以使用,查看开发文档 |
2 | 网站应用 | snsapi_login | (1)用户使用微信“扫一扫”,在PC端扫码(2)客户端打开授权页,完成登录授权 | (1)注册微信开放平台(open.weixin.qq.com)帐号,并完成开发者资质认证(2)申请【网站应用】并审核通过后可以使用,查看开发文档 |
3 | 微信客户端内H5 | 使用公众号的登录能力: snsapi_base snsapi_userinfo | snsapi_base:静默授权 snsapi_userinfo: (1)用户在H5内点击登录,唤起授权弹窗 (2)用户侧完成登录授权 | (1)注册微信公众号,选择“服务号”类型,并完成微信认证(2)在公众号管理后台设置回调域名(3)接入微信登录能力,查看开发文档 |
4 | 小程序 | wx.login wx.getUserInfo | wx.login:静默授权,开发者可获取openid wx.getUserInfo: (1)用户在小程序内点击组件,唤起登录窗口(2)用户侧完成登录授权 | (1)注册小程序 (2)接入微信登录功能,查看开发文档,查看登录流程设计指引 |
说明:
- 序号1——“App”针对的是:在手机中打开移动应用时,使用微信授权登录。
-
序号2——“网站应用”针对的是:使用浏览器访问的Web网站时,使用微信授权登录。
-
序号3——“微信客户端内H5”针对的是:在微信客户端中访问第三方网页时,使用微信授权登录。
-
序号4——“小程序”针对的是:打开微信小程序时,使用微信授权登录。
博瑞霖目前需要使用的功能为:“网站应用”和“小程序”。
一、小程序使用微信授权登录
该部分业务逻辑基本已完成。
二、网站应用使用微信授权登录
该部分功能未完成,目前有两个方案:
1、基于“网站应用”的OAuth扫码登录
参考链接:https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.html
可参考的网站:https://www.zhihu.com(微信授权后,知乎会要求用户绑定手机号)
前置工作:在微信开放平台注册创建网站应用,审核通过够后,设置用于OAuth回调验证的后端URL(API接口)。
前端工作:
网站内嵌二维码微信登录 JS 实现。
后端工作:
完成OAuth2认证流程。
优点:
- 不需要自己制作二维码,调用微信开发平台API,可以直接生成登录用二维码。
- 前端和后端的开发有标准的开发文档。
缺点:文章来源地址https://www.toymoban.com/news/detail-487581.html
-
需要注册网站应用,微信审批通过后,配置授权回调URL。
-
根据官方文档描述网站应用微信授权域为“snsapi_login”,该授权域仅能获取用户的OpenID,目前小程序登录仅获取了用户的OpenID。针对同一用户的多个角色(医生和销售),会有两个OpenID(对应两个小程序),无法预判OAuth验证接口调用时是否会发生代码层面的逻辑问题。
-
可考虑修改小程序逻辑,取用户的UnionID。但需要实际测试,能否获取用户授权的作用域“snsapi_userinfo”(该授权域,可以获取比较详细的用户信息)。
-
“snsapi_login”无法获取用户的手机号,如果用户不存在,无法登录。(这个其实不算是缺点,我们本身的逻辑就不支持这种方式的登录)
-
二维码图案样式固定,无法更改。
2、 使用小程序认证
可参考网站:https://www.csdn.net(采用CSDN小程序验证,若小程序登录未过期,验证时直接跳过授权。也可能是首次授权后,后面就需要授权了。)
优点:
-
可自己制作二维码。
-
验证逻辑可控。
-
小程序验证可获取相对完整的用户信息。文章来源:https://www.toymoban.com/news/detail-487581.html
缺点:
- 前端和后端开发工作量相对会多一下,同时开发工作开始前要规划好授权验证逻辑(要由足够的安全性)。
到了这里,关于微信扫码登陆流程的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!