前一段之间做微信自定义分享,积累了一些经验,分享给大家。
步骤一、二在微信开发者文档中已经很详细了,直接从步骤三开始吧。
步骤三要参数微信的参数,除了appid之外,其他的参数都是动态的,这里,我用的php语言,在后端生成的参数,代码如下:
php端代码:
public function getwxinfo(){
$dataurl = i('dataurl');
include('./thinkphp/library/vendor/jssdk/jssdk.php');
$jssdk = new jssdk('appid','appsecret');
$signpackage = $jssdk->getsignpackage($dataurl);
exit(response('1','ok',$signpackage));
}
生成签名时,必须获取当前页面的url,所以$dataurl是通过下面js动态获取的,切记。
js端代码:
var dataurl = window.location.href;
$.ajax({
type:'post',
data:{'dataurl':dataurl},
url:'/index.php/home/index/getwxinfo',
datatype:'json',
success:function(json){
var list = json.data;
var appid = list.appid;
var timestamp = list.timestamp;
var noncestr = list.noncestr;
var signature = list.signature;
weixininfo(appid,timestamp,noncestr,signature);
},
error:function() {
//alert('网络不给力哦...')
}
});
function weixininfo(appid,timestamp,noncestr,signature){
wx.config({
debug: false,
appid: appid,
timestamp:timestamp ,
noncestr:noncestr,
signature:signature,
jsapilist: [
'checkjsapi', //判断当前客户端版本是否支持指定js接口
'onmenusharetimeline', //分享到朋友圈
'onmenushareappmessage', //分享给好友
'onmenushareqq', //分享到qq
'onmenushareweibo' //分享到微博
]
});
}
wx.ready(function () {
//微信好友
var s_title = '分享标题';
var s_desc = '分享描述';
var s_link = '分享后的链接';
var s_imgurl = '图片链接';
wx.onmenushareappmessage({ //例如分享到朋友圈的api
title: s_title, // 分享标题
desc: s_desc, // 分享描述
link: s_link, // 分享链接
imgurl: s_imgurl, // 分享图标
success: function () { },
cancel: function () { }
});
//朋友圈
wx.onmenusharetimeline({
title: s_title, // 分享标题
link: s_link, // 分享链接
imgurl: s_imgurl, // 分享图标
success: function () { },
cancel: function () { }
});
//qq好友
wx.onmenushareqq({
title: s_title, // 分享标题
desc: s_desc, // 分享描述
link: s_link, // 分享链接
imgurl: s_imgurl, // 分享图标
success: function () { },
cancel: function () { }
});
});
wx.error(function (res) {
alert(res.errmsg); //打印错误消息。及把 debug:false,设置为debug:ture就可以直接在网页上看到弹出的错误提示
});
alert(res.errmsg); //打印错误消息。及把 debug:false,设置为debug:ture就可以直接在网页上看到弹出的错误提示
});
就这么简单。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持硕编程。
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!