商城系统 注册

微信小程序服务通知模板的实现

2020-09-27|HiShop
导读:微信小程序服务通知对应的技术实现是模板消息,是需要做技术开发的,对于工程师们来说,看一下官方文档就能上手。...

微信小程序服务通知对应的技术实现是模板消息,是需要做技术开发的,对于工程师们来说,看一下官方文档就能上手。

 

下面直接上代码:

wxml:

<form name='pushMsgFm' report-submit bindsubmit='form'>
<button form-type="submit">submit</button>
</form>
 

js:

// pages/index/index.js
Page({

data: {

},

/*

微信公众平台测试连接 https://mp.weixin.qq.com/debug/

全局返回码说明:https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1433747234

 

*/
onLoad: function (options) {
var that = this
wx.login({
success: function (data) {
console.log(data.code, data)
// 获取openid
wx.request({
url: 'https://api.weixin.qq.com/sns/jscode2session?appid=你的自己的appid&secret=你自己的session_key&js_code=' + data.code ,
header:  {  "Content-Type":  "application/x-www-form-urlencoded"  },
method: "post",
success: function (res) {
console.log(res, "opind")
that.setData({
openid: res.data.openid,
session_key: res.data.session_key,
})
}
})

}
})

// 获取access_token
wx.request({
url: 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=你的自己的appid&secret=你自己的session_key',
method: "GET",
success: function (res) {
console.log(res, "res")
console.log(res.data.access_token, "access_token")
that.setData({
access_token: res.data.access_token,
})
}
})

},

// 点击执行方法
form: function (e) {
var that = this;
var fId = e.detail.formId;
// 网络请求
var l = 'https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=' + that.data.access_token;
// 需要传的参数
var d = {
touser: that.data.openid, //用户的openid
template_id: 'XX1hceIwI1XiQaUc5Z4qIrZnYQkYEHElSq5m6yIa0M8',//这个是申请的模板消息id,位置在微信公众平台/模板消息中添加并获取
page: '/pages/index/index', //点击通知跳转的页面
form_id: fId, //表单提交场景下,为 submit 事件带上的 formId
 
//此处必须为data,只有人说value也可以,可能官方已经修复这个bug
data: {
"keyword1": {
"value": "酒店",
"color": "#4a4a4a"
},
"keyword2": {
"value": "2018-03-22",
"color": "#9b9b9b",
},
"keyword3": {
"value": "$300",
"color": "#9b9b9b"
},
"keyword4": {
"value": "中国",
"color": "#9b9b9b"
},
 
},
color: '#ccc',
emphasis_keyword: 'keyword1.DATA'
}
wx.request({
url: l,
data: d,
method: 'POST', //此处不能有请求头
success: function (res) {
console.log(res, "push msg");
},
fail: function (err) {
console.log(err, "push err");
}
});
},

})

      最后编译,点击提交发起请求,这里只能手机调试,我用开发工具打印出来的formId: "the formId is a mock one"并不是数字串。此处需要真机测试才能成功

HiShop小程序工具提供多类型商城/门店小程序制作,可视化编辑 1秒生成5步上线。通过拖拽、拼接模块布局小程序商城页面,所看即所得,只需要美工就能做出精美商城。更多小程序商店请查看:小程序商店

微信小程序服务通知模板的实现

电话咨询 预约演示 0元开店