首先这一定需要使用微信jssdk,但是在你使用了微信jssdk之后,依旧分享的链接不带图标和摘要,那就看看我踩的坑吧。
前端代码
我这里引入了jQuery(不用jQuery的写法的话可以不引入),然后这里就是必须引入最新的微信jssdk:https://res2.wx.qq.com/open/js/jweixin-1.6.0.js
最新的微信jssdk已经舍弃了之前的分享接口,最新的分享接口是:updateAppMessageShareData 和 updateTimelineShareData
前端代码如下:
<script src="https://res2.wx.qq.com/open/js/jweixin-1.6.0.js"></script>
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
<script>
var url = location.href;
$.ajax({
type: "get",
url: "https://你的网址/wxjssdk.php?url=" + url,
dataType: "json",
success: function(res) {
if (res.code === 200) {
wx.config({
debug: false,
appId: res.data.appId,
timestamp: res.data.timestamp,
nonceStr: res.data.nonceStr,
signature: res.data.signature,
jsApiList: [
'updateAppMessageShareData',
'updateTimelineShareData'
]
});
wx.ready(function() {
wx.updateAppMessageShareData({
title: res.data.title,
desc: res.data.desc,
link: res.data.link,
imgUrl: res.data.imgUrl,
success: function() {
console.log('分享成功');
}
});
wx.updateTimelineShareData({
title: res.data.title,
link: res.data.link,
imgUrl: res.data.imgUrl,
success: function() {
console.log('分享成功');
}
})
});
}
}
})
</script>
后端代码
前端需要ajax请求后端进行签名和获取token,请求的后端https://你的网址/wxjssdk.php文件代码如下:
<?php
/**
* 微信JsSDK
* Class JsSDK
*/
class JsSDK {
private $appId;
private $appSecret;