
微信的openID、unionID等总结
1个回答
展开全部
结论:同一用户,对同一个微信开放平台下的不同应用,unionid是相同的
用处:用unionID关联同一个微信开放平台帐号下移动应用openID、网站应用openID和公众帐号(包括小程序)openID,维护自己的用户
获取unionID的4种方式:
1、调用接口 wx.getUserInfo,从解密数据中获取 UnionID。注意本接口需要用户授权,请开发者妥善处理用户拒绝授权后的情况。
2、如果开发者帐号下存在同主体的公众号,并且该用户已经关注了该公众号。开发者可以直接通过 wx.login + code2Session 获取到该用户 UnionID,无须用户再次授权。
3、如果开发者帐号下存在同主体的公众号或移动应用,并且该用户已经授权登录过该公众号或移动应用。开发者也可以直接通过 wx.login + code2Session 获取到该用户 UnionID ,无须用户再次授权。
4、小程序端调用云函数时,当满足 UnionID 获取条件时可在云函数中通过 cloud.getWXContext 获取 UnionID
参考: UnionID 机制说明
以小程序里面为例,上图:
code2Session ,参数appid、secret、js_code、grant_type='authorization_code',请求地址:
下发小程序和公众号统一的服务消息 ,参数access_token、openid、mp_template_msg,请求地址:
access_token ,参数grant_type=client_credential、appid、secret,请求地址:
用处:用unionID关联同一个微信开放平台帐号下移动应用openID、网站应用openID和公众帐号(包括小程序)openID,维护自己的用户
获取unionID的4种方式:
1、调用接口 wx.getUserInfo,从解密数据中获取 UnionID。注意本接口需要用户授权,请开发者妥善处理用户拒绝授权后的情况。
2、如果开发者帐号下存在同主体的公众号,并且该用户已经关注了该公众号。开发者可以直接通过 wx.login + code2Session 获取到该用户 UnionID,无须用户再次授权。
3、如果开发者帐号下存在同主体的公众号或移动应用,并且该用户已经授权登录过该公众号或移动应用。开发者也可以直接通过 wx.login + code2Session 获取到该用户 UnionID ,无须用户再次授权。
4、小程序端调用云函数时,当满足 UnionID 获取条件时可在云函数中通过 cloud.getWXContext 获取 UnionID
参考: UnionID 机制说明
以小程序里面为例,上图:
code2Session ,参数appid、secret、js_code、grant_type='authorization_code',请求地址:
下发小程序和公众号统一的服务消息 ,参数access_token、openid、mp_template_msg,请求地址:
access_token ,参数grant_type=client_credential、appid、secret,请求地址:
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询