小程序实现订阅功能和测试发送订阅信息

现在一次性订阅是只能用户点一次才能发送一次,而针对长期模板只有规定的几种类目政务、民生、交通等等的才可以,所以说感觉这功能其实已经不是很适合使用了,只适合一些特别的场景才可以使用。

地址:https://developers.weixin.qq.com/miniprogram/dev/api/open-api/subscribe-message/wx.requestSubscribeMessage.html

在这里插入图片描述

一、先去小程序管理后台,添加订阅模板

在这里插入图片描述

二、页面让用户点击订阅(wx.requestSubscribeMessage

在这里插入图片描述

<button slot="right-icon" type="primary" @click="alarmSubScrube" size="mini">{{alarmStatus ? '已订阅':'立即订阅'}}</button>

方法

alarmSubScrube(e){
    wx.requestSubscribeMessage({
      tmplIds: ['模板ID'],
      success (res) { 
          console.log(res);
          if (res['模板ID'] == 'accept') {
              this.alarmStatus = true
            wx.showToast({
              title: '订阅成功',
              icon: 'success',
              duration: 2000
            })
          } else if (res['模板ID'] == 'reject') {
              this.alarmStatus = false
            wx.showToast({
              title: '用户取消订阅',
              icon: 'error',
              duration: 2000
            })
          } else if (res['模板ID'] == 'ban') {
              this.alarmStatus = false
            wx.showToast({
              title: '订阅已被封禁',
              icon: 'error',
              duration: 2000
            })
          } else if (res['模板ID'] == 'filter') {
              this.alarmStatus = false
            wx.showToast({
              title: '订阅模板错误',
              icon: 'error',
              duration: 2000
            })
          }else {
              this.alarmStatus = false
            wx.showToast({
              title: '订阅失败',
              icon: 'error',
              duration: 2000
            })
          }
      },
      fail (err) {
          this.alarmStatus = false
          wx.showToast({
            title: err.errCode + err.errMsg,
            icon: 'error',
            duration: 2000
          })

      }
    })
},

三、发送订阅信息(使用postman来测试)

地址:https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/mp-message-management/subscribe-message/sendMessage.html

在这里插入图片描述

(1)从参数可以看到,我们要先拿到access_token

接口:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential

在管理后台获取小程序的appID和secret密钥

在这里插入图片描述

(2)获取用户的openID

在页面调用wx.login

实际业务逻辑应该是用户在页面出发wx.loin的时候获取到的code,然后后端请求获取到openID,存在用户信息上

(3)发送订阅信息

接口:https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=上面获取到的token

参数

{
	"touser": "用户openID",
	"page": "pages/warnInfo/warnInfo?id=9ec7c41c16db4a0eb29396bc6db79e77", //点击通知进入的页面
	"lang": "zh_CN",
	"data": {
        //这些字段都是有字符要求的,请仔细看文档
		"character_string6": {
			"value": "SH079600022031"
		},
		"thing1": {
			"value": "测试"
		},
		"thing2": {
			"value": "扬尘噪声黄色报警"
		},
		"time3": {
			"value": "2023-10-19 01:00"
		},
		"thing4": {
			"value": "监测到pm.25达到82.0 ug/㎡"
		}
	},
	"template_id": "模板ID",
	"miniprogramState": "trial" //developer为开发版;trial为体验版;formal为正式版;默认为正式版
}

在这里插入图片描述

(4)错误码

在这里插入图片描述

(5)效果

在这里插入图片描述

以上就可以实现用户点击订阅,然后我们用postman调试了,但是实际上这些调用应该是在服务端调用,防止信息泄露。

  • 6
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一介青烟小生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值