订阅消息

最近更新时间:2020-11-02 18:29:41

体验代码

本章的案例代码,请参考订阅消息源码

体验功能

操作步骤

步骤1:准备微信小程序 APPID 和订阅消息模板 ID

  1. 选择已有的微信小程序账号,或者新注册一个微信小程序,注册流程参考微信开发文档 小程序 相关开发说明。

    注意:

    在进行之后步骤前,请确定已有的或者新注册的小程序类别包含【工具-信息查询】服务类目如下图:如无请设置

  2. 登录 微信管理后台,在左侧栏中单击【开发】-【开发设置】,保存 APPID,在之后步骤中要用到。

  3. 在微信管理后台左侧栏单击【订阅消息】,在页面中单击【添加】按钮。

    在跳转的页面搜索框中输入“信息发布提醒”,单击搜索,选择第一个模板,单击右侧【选用】按钮。

  4. 在跳转的页面中选择“信息”和“发布时间”两个项目,单击【提交】按钮。

  5. 在完成页面中,可以看到申请的订阅消息模板,将模板ID复制保存,之后要用。

步骤2:部署与运行项目

  1. 确定安装微信开发者工具,如无安装请参照 微信开放文档-工具相关介绍并下载安装。
  2. 点击此处 下载项目源码包,其中有已经完备的实现源码。
  3. 将项目源码导入微信开发者工具打开,导入过程中小程序 APPID 填写在 步骤一 中保存的 APPID。打开成功后如下效果。
  4. 打开项目目录 miniprogram/pages/index/index.js,将第二行的 lessonTmplId 后填入步骤一申请的模板ID。
  5. 保存并编译运行项目,单击开发者工具-预览-自动预览-编译并预览。将微信小程序项目运行到手机。
  6. 在手机中小程序内,输入框中填写信息,并点击【发送订阅消息】,即可在微信服务消息中收到小程序发送的订阅消息。

步骤3:云开发发送订阅消息的代码

云开发在云函数中发送订阅消息的代码如下:

const cloud = require('wx-server-sdk');
cloud.init();

exports.main = async (event, context) => {
  try {
    await cloud.openapi.subscribeMessage.send({
      touser: event.userInfo.openId,//小程序的用户openid,云开发在调用时直接附带
      page: 'index',//点击订阅消息后打开的小程序界面,可以不填
      data: event.data,//发送的消息
      templateId: event.templateId//模板ID
    });
  } catch (err) {
    console.log(err);
    return err;
  }
};
目录