1,引入<script src="http://res.wx.qq.com/open/js/jweixin-1.4.0.js" type="text/javascript" charset="utf-8"></script>微信js
2,
//微信信息获取
function wxcallback(){
$.ajax({
type:"get",
url:"接口",
contentType: "application/json",
async: true,
data:{
"id":Liveid
},
success:function(data){
if(JSON.parse(data).errorCode){
console.log(JSON.parse(data));
var wxcont=JSON.parse(data);
wxInit(wxcont.Appid,wxcont.Timestamp,wxcont.Noncestr,wxcont.Signature);
}else{
alert(JSON.parse(data).result);
}
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert(XMLHttpRequest.status + XMLHttpRequest.readyState + textStatus);
}
});
}
//微信分享
function wxInit(appIds,timestamps,nonceStrs,signatures){
wx.config({
debug: false,
appId: appIds,
timestamp: timestamps,
nonceStr: nonceStrs,
signature:signatures,
jsApiList: [
‘checkJsApi‘,
‘updateTimelineShareData‘,
‘updateAppMessageShareData‘,
‘onMenuShareAppMessage‘,
‘onMenuShareTimeline‘
]
});
//检测判断当前客户端版本是否支持指定JS接口
wx.checkJsApi({
jsApiList: [ ‘updateTimelineShareData‘,
‘updateAppMessageShareData‘,
‘onMenuShareAppMessage‘,
‘onMenuShareTimeline‘
], // 需要检测的JS接口列表,所有JS接口列表见附录2,
success: function(res) {
// 以键值对的形式返回,可用的api值true,不可用为false
// 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
alert(JSON.stringify(res));
},
error:function(res){
alert(res);
}
});
//分享功能
wx.ready(function () { //需在用户可能点击分享按钮前就先调用
var shareData = {
title: wxtitle, // 分享标题
desc: wxdesc, // 分享描述
link: linkUrl, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl: wximgUrl, // 分享图标
success: function (res) {
// 设置成功
},
error:function(res){
}
};
//自定义“分享给朋友”及“分享到QQ”按钮的分享内容(1.4.0)
wx.updateAppMessageShareData(shareData);
//自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容(1.4.0)
wx.updateTimelineShareData(shareData);
});
wx.error(function(res){
// config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
alert(res.errMsg);
});
}
注:
前端所需获取
title: wxtitle, // 分享标题
desc: wxdesc, // 分享描述
link: linkUrl, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
imgUrl: wximgUrl, // 分享图标
后台通过微信接口对appid等数据进行获取,返给前端
debug: false, 是否开启开发模式
appId: appIds,
timestamp: timestamps,
nonceStr: nonceStrs,
signature:signatures,