微信公众平台开发(98) UnionID

时间:2021-01-23 05:55:38

关键字 微信公众平台 微信开放平台 UnionID
作者:方倍工作室
原文:http://www.cnblogs.com/txw1958/p/weixin98-get-user-UnionID.html

微信公众平台更新,为开发者提供UnionID机制

经开发者反馈,由于同一公司下多个公众号之间需要用户帐号互通,微信开放平台提供了UnionID机制,来解决此问题。

通过获取用户基本信息接口,开发者可通过OpenID来获取用户基本信息,而如果开发者拥有多个公众号,可使用以下办法通过UnionID机制来在多公众号之间进行用户帐号互通。

1. 将多个公众号绑定到同一个微信开放平台(open.weixin.qq.com)帐号下,即同一个Union下

2. 通过获取用户基本信息接口中的UnionID来区分用户的唯一性,不过需要注意的是:公众号只有在被绑定到微信开放平台帐号下后,才会获取UnionID。只要是同一个微信开放平台帐号下的公众号,用户的UnionID是唯一的。换句话说, 同一用户,对同一个微信开放平台帐号下的不同应用,UnionID是相同的。

一、注册微信开放平台

地址:http://open.weixin.qq.com/

过程略。

二、绑定微信公众号

点击顶部 “管理中心”,选择进入“公众号”,再点击“绑定公众号”

微信公众平台开发(98) UnionID

只有通过微信认证的公众号才能绑定。

三、获取用户基本信息

这是使用高级接口中的获取用户基本信息来实现,方法参考 微信公众平台开发(86) 获取用户基本信息

在第一个公众号下面获得的方倍的用户信息如下:

{
"subscribe": ,
"openid": "oLVPpjqs9BhvzwPj5A-vTYAX3GLc",
"nickname": "方倍",
"sex": ,
"language": "zh_CN",
"city": "广东",
"province": "深圳",
"country": "中国",
"headimgurl": "http://wx.qlogo.cn/mmopen/utpKYf69VAbCRDRlbUsPsdQN38DoibCkrU6SAMCSNx558eTaLVM8PyM6jlEGzOrH67hyZibIZPXu4BK1XNWzSXB3Cs4qpBBg18/0",
"subscribe_time": ,
"unionid": "oTBn-jt2RQSHdBoJQYFSdnZo8BBQ"
}

在第一个公众号下面获得的方倍的用户信息如下:

{
"subscribe": ,
"openid": "ouBMEj6WFnUFBIUKe83VD7s7dft9",
"nickname": "方倍",
"sex": ,
"language": "zh_CN",
"city": "广东",
"province": "深圳",
"country": "中国",
"headimgurl": "http://wx.qlogo.cn/mmopen/utpKYf69VAbCRDRlbUsPsdQN38DoibCkrU6SAMCSNx558eTaLVM8PyM6jlEGzOrH67hyZibIZPXu4BK1XNWzSXB3Cs4qpBBg18/0",
"subscribe_time": ,
"unionid": "oTBn-jt2RQSHdBoJQYFSdnZo8BBQ"
}

注意两个不同的用户信息

在不同的公众账号下openid是不一样的,而他们的unionid却是一样的。其他的信息不具有唯一性,没有比较意义。但基本信息是一致的。

这样就知道了关注两个公众账号的其实是同一个人。

四、UnionID的意义

对于拥有多个账号的企业来说,unionid可以帮助识别不同公众账号下的用户是否是同一个人。这样在不同账号下对该用户提供的服务可以连续起来了。

还可以去除重复关注的用户数,便于统计真实的关注用户总数。