提供微商城·微分销·小程序开店需求
5分钟开通你的微信商城店铺!2018-09-28 作者:秩名
我们在一些微信群中看到过这样的小程序分享卡片:当你点进去后,会看到一个列表,里面有其他群成员的头像和相关信息。比如《王者荣耀群排行》,但是段位信息是腾讯私有的接口,我们只能拿到头像和昵称等基础信息。
首先我们要调用wx.showShareMenu进行设置,来开启是否使用带shareTicket的转发,这个shareTicket是开发群功能的关键:
wx.showShareMenu({
withShareTicket: true,
})
一般将其放在页面onShow中。
触发转发事件
如果要自定义转发按钮而不是有默认右上角的转发按钮,需要在页面中放置一个open-type=share的button组件:
接下来在页面中设置分享函数onShareAppMessage:
onShareAppMessage: function (res) {
if (res.from === \'button\') {
// 来自页面内转发按钮
console.log(res.target)
}
return {
title: \'自定义转发标题\',
path:\'/pages/test/test?id=123\',
success: function(res) {
// 转发成功
console.log(res)
// 只有转发到群聊中打开才可以获取到 shareTickets 返回值,单聊没有 shareTickets
if (res.shareTickets && res.shareTickets.length>0) {
app.getShareInfo(res.shareTickets[0])
}
},
fail: function(res) {
// 转发失败
console.log(res)
}
}
}
现在就可以进行转发了,在群聊中将会看到此次分享的小程序消息卡片。每个shareTicket对应每个群并且单聊不会有该值。这里只选择一个转发,所以直接取第一个。至于app.getShareInfo是用来获取群id(openGId)的函数,我们放到后面介绍。
群成员点消息卡片
当群成员点消息卡片进入小程序后,在app.js的onShow/onLaunch的options中可以获取到shareTicket,shareTicket每次都是不一样的,比分你分享的时候获取到的跟这里获取到的不是同一个,但是会对应同一个openGId。
在app.js中,通过wx.getShareInfo获取encryptedData和iv,然后将其传给后台进行解析。
在getDecodeEncryptedData中,当后台解析成功后,就会返回一个openGId。
此时就可以将群openGId与用户openid进行绑定了,这个绑定信息也是要保存到后台的。如果后台没有保存过头像昵称信息,此时也可以将用户头像和昵称一起保存到后台。
类似于下面这样的一个接口:
// 下面只是演示代码
post({
url:\'https://www.example.com/controller/bindGroupAndUser\'
data:{
code,
openGId
}
})
其中的code调用wx.login获得,后台根据这个code能获取到openid。然后进行绑定。然后根据自己的需求,可能还要一个保存用户基础信息和拉取群成员信息列表的接口。
推荐文章
是不是很多微信用户在使用微信小程序时会出现这样的问题,比如,突然中断的情况,其实这就是微信小程序闪退。微信小程...
日前,百度陆续开放了多个智能小程序流量入口,具体包括以下三类: 第一类是中心化入口。 用户除了在“我的“菜单可以...
微信应用的一个很大的优势就在于使用过程中是不需要进行注册和显式登录的,大部分问题基本上可以一键解决。但是在授权...
见到 wx.request 的第一眼,就让我想起了 $.ajax 这东西,使用起来确实有很多不方便,不能忍,幸好小程序是支持ES6语法的,所...
收银系统小程序的开通流程 1. 选择合适的收银软件 目前市场上有多种收银软件提供小程序店铺功能。例如,店益就是一款能...
在互联网高速发展的今天,线上线下一体化的商业模式已成为主流。特别是对于零售行业而言,将收银系统与微信公众号对接...
收银系统对接微信小程序的流程 准备工作:首先,商家需要准备好收银系统和小程序的开发环境。对于收银系统,可以使用...
直接说答案:目前是不能直接推送自己的小程序的。 不过也不是说没有办法,可以通过视频号小店,然后跳转到自己的微信...
第一:线上线下收银系统 线上线下收银系统是一种结合了实体店铺与在线销售渠道的技术解决方案。这种系统不仅提高了收...
第一:线上线下一体化收银台的选择 在选择线上线下一体化收银台时,重要的是考虑系统的功能、操作体验、性能和稳定性...