首先建议很多说WeiXinJSBridge这个微信浏览器内置的方法也可以做,我试了压根儿不行!! 也可能我写的不对吧,反正是兼容不太好。
后来我引入了微信的js_sdk,然后就开始先调用wx.config,第一次调用一定要把debug打开,这样有没有成功才看的到!!
wx.config({
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。(测试记得关掉)
appId: res.data.AppId, // 必填,公众号的唯一标识
timestamp: res.data.Timestamp, // 必填,生成签名的时间戳
nonceStr: res.data.NonceStr, // 必填,生成签名的随机串
signature: res.data.Signature, // 必填,签名,见附录1
jsApiList: ["onMenuShareTimeline", "onMenuShareAppMessage"], // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
});
config调用成功之后就可以配置转发了。
wx.ready(function () {
//f分享到朋友或者分享到qq
wx.onMenuShareTimeline({
title:'', // 分享标题
link: "", // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl: "", // 分享图标
success: function () {
},
});
//f分享到朋友圈或者分享到qq空间
wx.onMenuShareAppMessage({
title: '', // 分享标题
desc: "", // 分享描述
link: "", // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl: "", // 分享图标
type: "", // 分享类型,music、video或link,不填默认为link
dataUrl: "", // 如果type是music或video,则要提供数据链接,默认为空
success: function () {
},
});
});
wx.error(function (res) {
// config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
console.log("验证失败返回的信息:", res);
});
在wx.ready里面配置了转发的相关,wx.error是报错信息。基本上只要是wx.cofig成功了,接口加载好了就可以接收到回调。我这里是用来获取了转发次数。