1.订阅授权不拉起
官网
官网的走完第一步申请模板就看不懂了。
wx.requestSubscribeMessage放在getSetting不会拉起。
解决方式是:通过封装方法,在点击登录按钮的时候顺便激活。
2.发送模板
下面是激活订阅的代码,放在a方法里,用that.requestSubscribe激活即可,然后按钮绑定a方法即可
///发起消息订阅
requestSubscribe:function(){
wx.requestSubscribeMessage({
tmplIds: ['123456'],
success :(res)=>{
console.log("订阅消息 成功 "+JSON.stringify(res));
this.setData({
hasMessage: true
})
},
fail :(errCode,errMessage) =>{
console.log("订阅消息 失败 "+errCode+" message "+errMessage);
},
complete:(errMsg)=>{
console.log("订阅消息 完成 "+JSON.stringify(errMsg));
}
});
},
下面是发送消息模板,都是模拟数据,只要走通发出去了就很容易了。
//发送消息
sendMessage: function () {
let appid = "123456";
let secret = "123456";
let requestUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid="+appid+"&secret="+secret;
let access_token = null;
let formData = {
"touser": "123456",
"template_id": "123456",
"page": "/pages/index/index",
"miniprogram_state":"trial",
"lang":"zh_CN",
"data": {
"character_string6": {
"value": "339208499"
},
"thing1": {
"value": "lq"
},
"phrase2": {
"value": "待付款"
} ,
"date3": {
"value": "2019年10月1日 15:01"
} ,
"thing5": {
"value": "ncsk"
}
}
}
//获取token
wx.request({
url: requestUrl,
method: 'GET',
header: { "Content-Type": "application/json;charset=UTF-8"},
success: function (res) {
console.log("成功获取token!:"+res.data.access_token)
let url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token="+res.data.access_token;
//发送消息
wx.request({
url: url,
method: 'POST',
header: { "Content-Type": "application/json;charset=UTF-8"},
data: JSON.stringify(formData),
success: function (res) {
console.log("发送成功!:"+JSON.stringify(res))
},
fail: function(res){
console.log("发送失败!")
}
})
},
fail: function(res){
console.log("获取token失败!")
}
})
},