为了便于用户便捷使用App、网站、移动端网页、小程序的服务,微信提供不同的技术方案,便于开发者在不同终端平台的服务中接入微信登录。
通过这个教程,开发者可以了解平台提供的针对各终端平台的微信登录能力,并可以根据实际使用场景合理选择接入方式。
以下为几类型微信登录的功能说明:
类型 | 授权域/接口 | 用户侧使用流程 | 接入流程 |
App | 接入微信SDK,并调用snsapi_userinfo | (1)在App内选择使用微信登录 (2)拉起微信客户端,打开用户授权页,完成登录授权 | (1)注册微信开放平台(open.weixin.qq.com)帐号,并完成开发者资质认证 (2)申请【App移动应用】并审核通过后可以使用,查看开发文档 |
网站应用 | snsapi_login | (1)用户使用微信“扫一扫”,在PC端扫码 (2)客户端打开授权页,完成登录授权 | (1)注册微信开放平台(open.weixin.qq.com)帐号,并完成开发者资质认证 (2)申请【网站应用】并审核通过后可以使用,查看开发文档 |
微信客户端内H5 | 使用公众号的登录能力: snsapi_base snsapi_userinfo | snsapi_base:静默授权 snsapi_userinfo: (1)用户在H5内点击登录,唤起授权弹窗 (2)用户侧完成登录授权 | (1)注册微信公众号,选择“服务号”类型,并完成微信认证 (2)在公众号管理后台设置回调域名 (3)接入微信登录能力,查看开发文档 |
小程序 | wx.login wx.getUserInfo | wx.login:静默授权,开发者可获取openid wx.getUserInfo: (1)用户在小程序内点击组件,唤起登录窗口 (2)用户侧完成登录授权 | (1)注册小程序 (2)接入微信登录功能,查看开发文档,查看登录流程设计指引 |
开发者在不同使用场景下接入微信登录,应该注册符合要求的帐号并使用对应的登录能力。
【常见问题】
Q1: 在调用微信登录时,出现了“此帐号并没有这些scope的权限,错误码:10005”,是什么原因?
A:对于场景与帐号属性、能力项不对应时(如在移动端网页中使用网站应用的AppID调用登录能力),将会出现以下的错误提示:此帐号并没有这些scope的权限,错误码:10005
Q2:我的服务同时有App、官网、公众号、小程序,那我怎么打通用户数据?
A:对于多平台的服务,若开发者希望能识别用户身份,例如:希望用户在小程序内也能查看到在App内购买的商品订单,则可以通过平台提供的UnionID机制来实现用户身份识别。
好像缺少了一个场景:非微信环境的H5手机站(浏览器直接打开)
具体的文章内容可以看看小红书的文章。https://www.xiaohongshu.com/explore/64e2fdb4000000000800f8eb
如果能推动微信开放平台往前进一小步,我们也是很开心的。
微信客户端内H5
右侧的开发文档中
第一步:用户同意授权,获取code
这个网址已经失效,在微信里打开会报授权错误,请官方更新一下吧,既然是给开发者的例子,就应该可用
可是一刀切后老的代码可以继续wx.getUserInfo, 新的不行,这不公平呀。
我们平台已经实现了哈,https://mlink.cc/auth/signup 可以体验一下。
具体的文章内容可以看看小红书的文章。https://www.xiaohongshu.com/explore/64e2fdb4000000000800f8eb
如果能推动微信开放平台往前进一小步,我们也是很开心的。
scope参数错误或者没有scope权限是什么意思
明明显示开通成功了但是接口获取状态为未获得,一定要完成开发者认证吗
个人网站也不是企业账号,好像无法认证,求解
有PC端自定义扫码确认页方案吗
建议增加一个用短信验证码登录电脑版微信的功能,供少数手机屏幕摔碎的客户,在电脑版微信临时登录微信账号。
请问常见问题的 Q1 怎么解决?
个人用户需要提供公章才能创建网站应用吗?
用户微信登录能获取用户的微信号吗