微信公众号获取UnionID失败解决过程

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了微信公众号获取UnionID失败解决过程相关的知识,希望对你有一定的参考价值。

参考技术A openId 和 unionid的区别

1.OpenId是根据appId生成的,在一个app中openId是唯一的,也就是说同一用户在不同的APP中openId是不一样的。
2.开发者可通过OpenID来获取用户基本信息。特别需要注意的是,如果开发者拥有多个移动应用、网站应用和公众帐号,可通过获取用户基本信息中的unionid来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号,用户的unionid是唯一的。换句话说,同一用户,对同一个微信开放平台下的不同应用,unionid是相同的。

所以为了保证公众号和 小程序的实现互通 必须把公众号绑定到开发者平台
https://open.weixin.qq.com
如果没有绑定,接口可以返回openid 但是不能返回unionid

微信公众号开发 - 静默授权获取用户信息

参考技术A

openid 是什么 ,一个微信号与一个公众号对应一个固定不变的 openid 。所以一个微信号在一个公众号下的 openid 是不变的,如果换了一个对应的公众号,那就是另一个 openid 了。且只有在微信自带浏览器中打开的项目才可获取到。

UnionID 是什么 ,如果开发者拥有多个移动应用,网站应用,公众号和小程序,可以通过UnionID来区分用户的唯一性,因为只要是同一个微信开发平台账号下的移动应用,网站应用,公众号和小程序,用户的UnionID是唯一的。换句话说,同一个用户,对同一个微信开发平台的不同应用,UnionID是唯一的。

准备条件, 一个公众号、一个外网可访问的域名、该公众号的 AppID 和 AppSecret 、设置网页授权域名(登陆公众平台 设置----->公众号设置------>功能设置----->网页授权域名 按步骤操作并设置就好),这个域名就是你获取openid的web项目发布的域名,这里注意服务器请一定跑在80端口。

参数解释:

注意事项:

参数解释:

注意事项:

返回结果:

access_token 是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用 access_token 。开发者需要进行妥善保存。 access_token 的存储至少要保留512个字符空间。 access_token 的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的 access_token 失效。

接口说明

参数说明

返回结果

参数解释:

https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140839
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140183

以上是关于微信公众号获取UnionID失败解决过程的主要内容,如果未能解决你的问题,请参考以下文章

微信小程序、公众号获取UnionID

微信openid和UnionID (多公众号如何判断是否是同一人)

获取微信公众号用户的基本信息(UnionID机制)

微信 appid openid和UnionID

微信公众号开发 - 静默授权获取用户信息

微信公众平台 获取用户基本信息(UnionID机制)