辣鸡微信文档
兑换access_token :https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
兑换ticket:
https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=jsapi
找了好几天的报错,这个type搞错了。离谱。确保type=jsapi。
npm install weixin-js-sdk
前端代码:
import weixin from 'weixin-js-sdk'
wechatShare(shareData) {
const sign_url = location.href.split('#')[0];
//这是后端写的接口,需要用后端返回内容配置微信分享的参数
http(api,{url:sign_url}).then((res)=>{
console.log('res:',res)
let info = res.data;
const jsApiList=[
'checkJsApi', //检测接口权限
'updateTimelineShareData',
'updateAppMessageShareData'
];
weixin.config({
debug:false,
appId:info.appId,
timestamp:info.timestamp,
nonceStr:info.nonceStr,
signature:info.signature,
jsApiList
});
// 判断客户端是否支持指定js的接口
weixin.checkJsApi({
jsApiList,
success: function (res) {
// return res
console.log('判断客户端支持js接口', res)
},
})
weixin.ready(() => {
var title = shareData.title
var imgUrl = shareData.image
var description = shareData.desc
var link = shareData.url
var tempParam = {
title: title,
desc: description,
link: sign_url,
imgUrl: imgUrl,
success: (res) => {
console.log(res)
},
cancel: function (res) {
console.log('分享失败', res)
},
}
var tempParamLine = {
title: title,
link: sign_url,
imgUrl: imgUrl,
success: (res) => {
console.log(res)
},
cancel: function (res) {
console.log('分享失败', res)
},
}
weixin.updateAppMessageShareData(tempParam)
weixin.updateTimelineShareData(tempParamLine)
});
weixin.error(function(res){
console.log(res.errMsg);
})
}).catch(rej=>{
console.log('rej:',rej)
})
},
页面直接调用就好。