微信小程序会员卡开发跳坑
最近看好多人问,小程序里面怎么显示会员卡,然客户领取后,去对应店铺核销。
本身以为会很简单,最后费了好大心思才找到对应文档。 会员卡是见过微信最差的文档了,没说明参数从哪里获取。这篇文章带大家跳坑
看了一下文档,大概是这样一个函数,可以让用户领取会员卡
wx.navigateToMiniProgram({
appId: 'wxeb490c6f9b154ef9', //固定为此 appid,不可改动
extraData: data, // 包括 encrypt_card_id, outer_str, biz三个字段,须从 step3 中获得的链接中获取参数
success: function() {
},
fail: function() {
},
complete: function() {
}
})
这里的 extraData: data, // 包括 encrypt_card_id, outer_str, biz三个字段,须从 step3 中获得的链,是关键。
extraData,值文档说的第三步,在文档里面很难找到第三步获取开卡组件参数内容。也找不多哪个接口有返回这三个参数 encrypt_card_id, outer_str, biz。
文档上面有个开卡组件文档,我们打开
既然开卡组件文档没有,那我们去公众号文档,会员卡相关文档看下。
找到卡券-小程序打通
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1499332673_Unm7V
找到:接口1:获取开卡插件参数
红色箭头返回的URL,就带了我们需要的encrypt_card_id, outer_str, biz 三个参数, 只是文档没有说明,这个是url里面带的值,而不是返回的参数,所以给查找带来了麻烦。
我们试试
(这里之前记得先调用公众号access_token接口,然后去公众号后台拿到卡片ID)
真的拿到了,我们需要的三参数, 然后通过url解析,得到参数。
wx.navigateToMiniProgram({
appId: 'wxeb490c6f9b154ef9', //固定为此 appid,不可改动
extraData: data, // 包括 encrypt_card_id, outer_str, biz三个字段,须从 step3 中获得的链接中获取参数
success: function() {
},
fail: function() {
},
complete: function() {
}
})
小程序里做个按钮,领取会员卡。点击事件执行上面代码
提示此小程序未绑定公众账号
此时我们登陆公众账号,绑定这个小程序。
绑定后,继续提示错误
"navigateToMiniProgram:fail appId "wxeb490c6f9b154ef9" is not in navigateToMiniProgramAppIdList"
看英文的意思是说小程序wxeb490c6f9b154ef9未绑定此公众号。 这里wxeb490c6f9b154ef9 并不是我们自己的一个小程序appid ,而是文档规定必须填写的wxeb490c6f9b154ef9,这个是官方的一个小程序appid, 原理是我们执行调整小程序,跳转到官方小程序领取会员卡。
比较麻烦的是,绑定官方开卡这个小程序,需要官方同意才可以,这里添加了绑定,官方2天没同意,已经失效。
到此,就实现了微信小程序,跳转到卡卷小程序,领取会员卡的开发过程。