微信小程序的统一服务消息是一种用于向用户发送定期或不定期的服务性消息的方式。与订阅消息不同,统一服务消息无需用户授权,但发送消息的条件和限制相对较多。以下是使用统一服务消息的基本步骤:

步骤1:在小程序后台配置消息模板

在小程序后台的【设置】->【统一服务消息】中配置需要使用的消息模板,并获取对应的模板 ID。

步骤2:获取 Access Token

使用统一服务消息需要提供有效的 Access Token,可以通过以下方式获取:
// 小程序的 AppID 和 AppSecret
const appId = 'Your_AppID';
const appSecret = 'Your_AppSecret';

// 请求获取 Access Token
wx.request({
  url: `https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=${appId}&secret=${appSecret}`,
  success: function (res) {
    const accessToken = res.data.access_token;
    // 在此调用发送统一服务消息的方法,传入 accessToken
    sendUniformMessage(accessToken);
  },
  fail: function (err) {
    console.error('获取 Access Token 失败', err);
  }
});

步骤3:发送统一服务消息
function sendUniformMessage(accessToken) {
  wx.request({
    url: 'https://api.weixin.qq.com/cgi-bin/message/wxopen/template/uniform_send?access_token=' + accessToken,
    method: 'POST',
    data: {
      touser: '用户的OpenID',
      weapp_template_msg: {
        template_id: '你的模板ID',
        page: '跳转页面路径',
        form_id: '用户提交的表单ID',
        data: {
          keyword1: {
            value: '消息内容1',
          },
          keyword2: {
            value: '消息内容2',
          },
          // 更多关键词...
        }
      }
    },
    success: function (res) {
      console.log('发送统一服务消息成功', res);
    },
    fail: function (err) {
      console.error('发送统一服务消息失败', err);
    }
  });
}

注意事项:

  •  统一服务消息的发送条件和限制较多,包括用户是否关注公众号、消息是否超时等,请参考微信官方文档进行详细了解。


  •  消息的跳转页面路径应为小程序中存在的页面路径,确保在小程序中能够正常跳转。


  •  form_id 是用户提交的表单 ID,可通过小程序的 form 组件获取,但一个 form_id 只能用于发送一次消息。


以上是使用统一服务消息的基本步骤,实际使用中需要根据业务需求和场景进行适当的调整。更详细的接口说明可以查阅微信小程序官方文档。


转载请注明出处:http://www.pingtaimeng.com/article/detail/677/微信小程序