前言
收购是微信公众号/小程序发展的必要步骤,特别是针对拥有多个公众号和小程序的企业推出的机制,实现开户一体化,区分多个平台的独特性。
官方解释:如果一个开发者拥有多个移动应用、网站应用、公众号(包括小程序),可以通过区分用户的唯一性,并且公众号(包括小程序)对用户来说是唯一的。也就是说,同一个用户在同一个微信开放平台下,对不同应用的访问权限是相同的。
相关开发文章:
目录
1. 机制说明
2. 6种获取方式(代码实现)
三、总结
机制说明
如果一个开发者拥有多个移动应用、网站应用、公众号(包括小程序),就可以区分用户的唯一性,因为只要是同一个微信开放平台账号下的移动应用、网站应用、公众号(包括小程序),用户的是独一无二的。也就是说,同一个用户在同一个微信开放平台下,对不同应用的访问权限是相同的。
6种获取方式(代码实现)
开发者账号绑定的小程序可以通过以下渠道获取
6种获取方式
调用接口wx.从解密的数据中获取它。需要注意的是,该接口需要用户授权。请开发者妥善处理用户拒绝授权后的情况。如果开发者账号下有相同主题的公众号,且用户已关注该公众号。开发者可以直接通过wx. + 无需用户再次授权。若开发者帐号下存在同一实体的公众号或移动应用,且用户已获得授权登录该公众号或移动应用。开发者也可以直接通过wx. + 无需用户再次授权。用户在小程序中完成支付后(目前不支持小游戏),开发者可以直接通过接口获取用户的支付情况,无需用户授权。注:该接口仅在用户完成支付后5分钟内有效。开发商应妥善处理。小程序调用云功能时,如果开发者账号下有同一主题的公众号,且用户已关注该公众号,则可以通过 获取。在云功能中。小程序调用云功能时,如果开发者账号下有同主体的公众号或移动应用,且用户已被授权登录该公众号或移动应用,也可以通过 获取。在云功能中。
第一种收购
调用接口wx.从解密的数据中获取它。需要注意的是,该接口需要用户授权。用户拒绝授权后,开发者应妥善处理。
最常见的一种,也是很多学生应该使用的一种。
流程:用户授权-获取密钥-后端解密-获取
开放平台绑定小程序如图:
前端授权获取密钥:
后端解密获取
代码语言:
复制
varsettingItem = Senparc.Weixin.Config.SenparcWeixinSetting.Items[appID]; JsCode2JsonResult jsonResult = SnsApi.JsCode2Json(settingItem.WxOpenAppId, settingItem.WxOpenAppSecret, param.Code); if (jsonResult.errcode != ReturnCode.请求成功) { return (false, jsonResult.errmsg); } string unionID; var encryptedData = Senparc.Weixin.WxOpen.Helpers.EncryptHelper.DecodeEncryptedData(jsonResult.session_key, param.EncryptedData, param.IV); DecodedUserInfo decodedUserInfo = SerializerHelper.GetObject(encryptedData); unionID = decodedUserInfo.unionId;
第二种收购
如果开发者账号下有相同主题的公众号,且用户已关注该公众号。开发者可以直接通过wx. + 无需用户再次授权。
流程:关注公众号-获取