微信小程序(订阅消息)功能

 更新时间:2019年10月25日 13:33:05   作者:sayid760  
这篇文章主要介绍了微信小程序订阅消息功能,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下

小程序模板消息即将被废弃掉,于是有了新接口wx.requestSubscribeMessage

订阅消息文档

步骤:

1、获取用户openid 、access_token
2、获取模板 ID
3、获取下发权限(api)
4、发送订阅消息 (api)

模板id

在这里插入图片描述

小程序代码:

获取下发权限:

// login.js
requestMsg(){
 return new Promise((resolve, reject) => {
 wx.requestSubscribeMessage({
 tmplIds: ["MUtLwsw0xCndRULTgNHiXwGDyHJ-ZwAFL-b3kALcl0c"],
 success: (res) => {
  if (res['MUtLwsw0xCndRULTgNHiXwGDyHJ-ZwAFL-b3kALcl0c'] === 'accept'){
  wx.showToast({
  title: '订阅OK!',
  duration: 1000,
  success(data) {
  //成功
  resolve()
  }
  })
  }
 },
 fail(err) {
  //失败
  console.error(err);
  reject()
 }
 })
 })
 }
// index.wxml
<button class="v-btn mt40" bindtap="sendMsg">发生订阅消息</button>

// index.js 
// 点击发生订阅
sendMsg:function(e){
 wx.request({
 url: 'https://cff.mynatapp.cc/wxXcx/sendMessage',
 method: 'POST',
 data: { },
 header: {
 'content-type': 'application/json' // 默认值
 },
 success(res) {
 console.log(res)
 }
 })
 }

nodejs(koa2)代码:

发送订阅消息:

// index.js
const router = require('koa-router')()
const request = require('superagent')
let AppID = 'xxxxx'
let AppSecret = 'xxxxx'
let access_token = 'xxxxx'
let openid = 'xxxxx'

// 点击发生订阅消息
router.post('/wxXcx/sendMessage', async (ctx, next) => {
 let requestData ={
 "touser": openid,
 "template_id": "MUtLwsw0xCndRULTgNHiXwGDyHJ-ZwAFL-b3kALcl0c",
 "page": "index",
 "data": {
  "phrase1": {
  "value": "王小二"
  },
  "date5": {
  "value": "2019年10月1日 15:01"
  },
  "phrase4": {
  "value": "王老师"
  },
  "thing2": {
  "value": "ps入门到精通"
  },
  "character_string6": {
  "value": "1/10"
  }
 }
 }

 // 2、发送模板消息
 let res = await request
  .post(`https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=${access_token}`)
  .send(requestData)
  .set('Accept', 'application/json')

 console.log(res)

 ctx.body = { 
 code: '200', 
 data: null, 
 msg: '操作成功'
 }
})

在这里插入图片描述

总结

以上所述是小编给大家介绍的微信小程序(订阅消息)功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

相关文章

  • js编写当天简单日历效果【实现代码】

    js编写当天简单日历效果【实现代码】

    下面小编就为大家带来一篇js编写当天简单日历效果【实现代码】。小编觉得挺不错的,现在分享给大家,也给大家做个参考
    2016-05-05
  • 在JS中如何使用css变量详解

    在JS中如何使用css变量详解

    这篇文章主要给大家介绍了关于如何在JS中如何使用css变量以及export之javascript关键字的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2021-09-09
  • js查看一个函数的执行时间实例代码

    js查看一个函数的执行时间实例代码

    本篇文章给大家分享一段实例代码,主要介绍js查看一个函数的执行时间,代码简单易懂,感兴趣的朋友一起跟着小编来学习学习吧
    2015-09-09
  • JavaScript数据结构链表知识详解

    JavaScript数据结构链表知识详解

    存储有序的元素集合,但不同于数组,链表中的元素在内存中不是连续放置的。每个元素由一个存储元素本身的节点和一个指向下一个元素的引用(也称指针或链接)组成。下面通过本文给大家详细介绍下,需要的朋友参考下
    2016-11-11
  • javascript循环变量注册dom事件 之强大的闭包

    javascript循环变量注册dom事件 之强大的闭包

    是在循环过程过this被改变,注册过的事件也被随之改变,找到了一种解决方法
    2010-09-09
  • js实现图片3D轮播效果

    js实现图片3D轮播效果

    这篇文章主要为大家详细介绍了js实现图片3D轮播效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • Javascript连接多个数组不用concat来解决

    Javascript连接多个数组不用concat来解决

    这篇文章主要介绍了不用concat解决Javascript连接多个数组,需要的朋友可以参考下
    2014-03-03
  • 解决wx.onMenuShareTimeline出现的问题

    解决wx.onMenuShareTimeline出现的问题

    本文主要介绍解决wx.onMenuShareTimeline出现的问题,这里提供了示例代码作为参考,有需要的小伙伴可以参考下
    2016-08-08
  • IE浏览器IFrame对象内存不释放问题解决方法

    IE浏览器IFrame对象内存不释放问题解决方法

    IFrame对象占用的内存资源在窗体关闭后不会释放。弹出关闭反复多次后,IE浏览器内存占用可超过数百M,严重时IE浏览器报错
    2014-08-08
  • js获取数组中的最大值的9种方法总结

    js获取数组中的最大值的9种方法总结

    这篇文章主要为大家详细介绍了js获取数组中的最大值的9种方法,以及每种方法的工作原理和用法,文中的示例代码讲解详细,需要的可以参考下
    2023-08-08

最新评论