微信小程序在小程序内转发的方式有两个,分别是 和页面右上角的转发,两种转发都会调用 Page.onShareAppMessage(options)。
获取转发的详细信息,可以使用 wx.getShareInfo(OBJECT),需要参数shareTicket,shareTicket 就是转发成功后的回调的 shareTicket 。wx.getShareInfo(OBJECT)的回调会返回errMsg(错误信息)、encryptedData(包括敏感数据在内的完整转发信息的加密数据)、iv(加密算法的初始向量)。
代码
{ console.log('--- 转发回调 ---', res); //onShareAppMessage回调的shareTickets,如果没有,就说明不是转发到群聊的 console.log('--- shareTickets ---', res.shareTickets); //转发到群里的才会有shareTickets if (res.shareTickets && res.shareTickets[0]) { //获取转发的详细信息 wx.getShareInfo({ shareTicket: res.shareTickets[0], success: res = >{ console.log('--- 错误信息 ---', res.errMsg); console.log('--- 包括敏感数据在内的完整转发信息的加密数据 ---', res.encryptedData); console.log('--- 错误信息 ---', res.iv); }, fail: error = >{ console.log('--- getShareInfo fail ---', error); } }) } }, fail: () = >{ console.log('--- 转发失败 ---', path); } } }