微信开发中 openID 与 unionID 的区别

openID 与 unionID 的区别

OpenId对应的是应用,一个微信用户在一个应用里,OpenId是唯一的。订阅号、服务号、小程序就是三种不同的应用。如果你的公司有两个服务号呢?那就算两个应用。同一个用户在不同的应用里,OpenId各不相同。

UnionId对应的是微信开放平台,一个微信用户在一个微信开放平台环境里,UnionId是唯一的。这里解释下什么是微信开放平台,微信开放平台就是一个大环境,开放,也就是除了微信自己的订阅号、服务号、小程序这些,还包括APP、PC网站这种本来不属于微信生态系统的应用,OpenId的概念延伸到了APP和PC网站。

UnionID 机制说明

获取openid方法

小程序

公众号网页

  1. 微信用户向公众号发消息时,接受到的消息里带着openid
  2. 通过公众号跳转用户进行授权获取

网页授权

获取用户信息官方文档

微信授权登录(OAuth2.0)

OAuth(开放授权)是一个开放标准,允许用户让第三方应用访问该用户在某一网站上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。

允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的网站(例如,视频编辑网站)在特定的时段(例如,接下来的2小时内)内访问特定的资源(例如仅仅是某一相册中的视频)。这样,OAuth允许用户授权第三方网站访问他们存储在另外的服务提供者上的信息,而不需要分享他们的访问许可或他们数据的所有内容。

参考 && 工具

微信开发中 openID 与 unionID 的区别
微信授权登录(OAuth2.0)

微信官方文档
微信公众平台接口调试工具