扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
大家都知道不管是小程序还是公众号网页还是app,我们常常需要用到的一个数据就是用户的openid,包括识别用户、支付等等环节都需要用到,因为在一个小程序(或者公众号)下,一个个人微信号得到的openid是唯一的。然而小程序和公众号获取的openid并不一样的。
比如某某公司名下有一个微信公众号和一个微信小程序,我分别用同一个微信帐号进入小程序和接入微信登录的网页,系统获取到的openid并不一致,分别得到A和B。为了解决这个问题,打通不同类型的帐号应用,微信官方退出了UnionID机制。
官方的说法是这样的:如果开发者拥有多个移动应用、网站应用、和公众帐号(包括小程序),可通过 UnionID 来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号(包括小程序),用户的 UnionID 是唯一的。换句话说,同一用户,对同一个微信开放平台下的不同应用,unionid是相同的。
而这次关于unionid获取的方式新增了一种:用户在小程序(暂不支持小游戏)中支付完成后,开发者可以直接通过getPaidUnionId接口获取该用户的 UnionID,无需用户授权。
截至现在(2018年12月,当然下次更新就要2019年去了),微信小程序支持获取UnionID的方式主要包含:
调用接口 wx.getUserInfo,从解密数据中获取 UnionID。注意本接口需要用户授权,请开发者妥善处理用户拒绝授权后的情况。
当然,不管是小程序也好还是公众号也好,能够获取到用户的UnionID的前提就是注册认证微信开放平台并关联相关小程序或微信公众号(也可以是网站、APP)。认证微信开放平台需要另外支付300元/一年的认证费哦~
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流