怎么在微信小程序中实现消息推送
本篇文章给大家分享的是有关怎么在微信小程序中实现消息推送,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
创新互联成立与2013年,先为李沧等服务建站,李沧等地企业,进行企业商务咨询服务。为李沧企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。
一、准备工作
首先,在微信公众平台开通消息推送功能,并添加消息模板。可以从模板库选择模板也可以创建一个模板,模板添加之后,模板ID我们接下来要用的。
发送模板消息需要用到accesstoken、formId和openID。accesstoken获取及更新可以看我的上一篇文章;formID就是消息模板ID,openID我们最好在获取用户信息或用户登录时储存到全局变量里。
二、获取formID
在需要触发消息推送的页面添加提交表单的事件。目的是得到formID,formID是消息推送时必须的参数。
以上代码中“getFormID”是提交表单时触发的事件。
getFormID: function (e) { this.setData({ formId: e.detail.formId }) }
以上方法是获取formId。
三、配置消息模板参数,并传给后台
var config = require('../config.js') var app = getApp(); function pushMsg(formID, access_token){ var openId = app.globalData.userInfo.openId; var messageDemo = { touser: openId,//openId template_id: 'PjtLeqq-UeF49r5jr88s27HBzBDobijr6QfiwJwIkPg',//模板消息id, page: 'pages/index/index',//点击详情时跳转的主页 form_id: formID,//formID data: {//下面的keyword*是设置的模板消息的关键词变量 "keyword1": { "value": "keyword1", "color": "#4a4a4a" }, "keyword2": { "value": "keyword2", "color": "#9b9b9b" }, "keyword3": { "value": "keyword3", "color": "red" } }, color: 'red',//颜色 emphasis_keyword: 'keyword3.DATA'//需要着重显示的关键词 } wx.request({ url: config.service.sendMsgUrl, data: { value: messageDemo, access_token: access_token}, method: 'POST', success: function (res) { console.log("push msg"); console.log(res); }, fail: function (err) { console.log("push err") console.log(err); } }); } module.exports = { pushMsg: pushMsg }
四、推送消息
const request = require('../tools/ih_request'); var conf = require('../config.js') module.exports = async (ctx, next) => { var body = ctx.request.body.value await request.postJson({ url: 'https://api.weixin.qq.com/cgi-bin/message/wxopen/template/send?access_token=' + ctx.request.body.access_token, body: body, success: function (res) { ctx.body = { result: res } console.log('res=',res); }, error: function (err) { ctx.body = { result: err } console.log(err); } });}
ih_request.js
const request = require('request'); var ih_request = {}; module.exports = ih_request; ih_request.postJson = async function (option) { var res = await request({ url: option.url, method: 'post', headers: { 'content-type': 'application/json' }, body: JSON.stringify(option.body), }, function (err, res, body) { res ? option.success(body) : option.error(res.msg); console.log('MSGresult=', body); }); }
以上就是怎么在微信小程序中实现消息推送,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注创新互联行业资讯频道。
文章标题:怎么在微信小程序中实现消息推送
转载源于:http://scyingshan.cn/article/jgssdi.html