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

news2025/2/24 18:14:56

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

地址: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调试了,但是实际上这些调用应该是在服务端调用,防止信息泄露。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1576153.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

软件设计师26--关系代数

软件设计师26--关系代数 考点1&#xff1a;关系模式相关概念例题&#xff1a; 考点1&#xff1a;关系模式相关概念 并∪&#xff1a;结果是两张表所有记录的合并&#xff0c;相同记录只显示一次。 交∩&#xff1a;结果是两张表中相同的记录。 差-&#xff1a;S1-S2&#xff0…

Linux 下安装 openjdk 17【详细步骤】

👉 目标 了解为什么不选择 oracle jdk17,而是选择 openjdk17linux 下安装 openjdk17 详细步骤为什么不选择 oracle jdk17? 官网:Java Downloads | Oracle 中国 官网描述:JDK 17 binaries are free to use in production and free to redistribute, at no cost, under t…

Goingpub国自然基金-免费查询

可进行年份、学部、项目类别等检索&#xff0c;支持生成主题词汇总分析报告。 最最最关键&#xff0c;免费&#xff0c;只需要你注册登录一下&#xff0c;防止被爬虫侵扰。 界面简单&#xff0c;实用&#xff0c;支持模糊搜索&#xff0c;包含最新2023年数据&#xff0c;共56…

蚁群优化算法(Ant Colony Optimization Algorithm)

注意&#xff1a;本文引用自专业人工智能社区Venus AI 更多AI知识请参考原站 &#xff08;[www.aideeplearning.cn]&#xff09; 算法引言 蚁群算法&#xff0c;是一种模拟蚂蚁觅食行为的优化算法。想象一下&#xff0c;当你在野餐时&#xff0c;不小心洒了一些糖在地上。一…

2024免费Mac电脑用户的系统清理和优化软件CleanMyMac

作为产品营销专家&#xff0c;对于各类产品的特性与优势有着深入的了解。CleanMyMac是一款针对Mac电脑用户的系统清理和优化软件&#xff0c;旨在帮助用户轻松管理、优化和保护Mac电脑。以下是关于CleanMyMac的详细介绍&#xff1a; CleanMyMac X2024全新版下载如下: https://…

React18从入门到实战

文章目录 一、React环境的搭建二、项目文件的介绍&#xff08;1&#xff09;package.json&#xff0c;他是项目存放依赖包的地方&#xff0c;里面包括了一些项目核心包及下载的其他插件包&#xff08;2&#xff09;src文件夹是项目源码目录&#xff0c;平时开发页面就在其中&am…

如何成为一名优秀的工程师下

身为工程师&#xff0c;理所当然要重视实践&#xff0c;自然科学不管发展到何时都离不开实验。 电子学本身就是 为了指导工程实践。所以不要谈空洞的理论。现在很多毕业生都面临这样的问题&#xff0c;总是谈一些空洞的理论&#xff0c;甚至错误的但还不以为然的理论。实践可以…

【软考】23种设计模式详解,记忆方式,并举例说明

23种设计模式详解&#xff0c;举例说明 一、创建型模式1.1、抽象工厂模式&#xff08;Abstract Factory&#xff09;1.1.1、简介1.1.2、意图与应用场景1.1.3、结构1.1.4、优缺点1.1.4、示例代码&#xff08;简化版&#xff09; 1.2、建造者模式&#xff08;Builder&#xff09;…

MySQL主从的介绍与应用

mysql主从 文章目录 mysql主从1. 主从简介1.1 主从作用1.2 主从形式 2. 主从复制原理3. 主从复制配置3.1 mysql安装&#xff08;两台主机安装一致&#xff0c;下面只演示一台主机操作&#xff09;3.2 mysql主从配置3.2.1 确保从数据库与主数据库里的数据一样3.2.2 在主数据库里…

34-4 CSRF漏洞 - CSRF跨站点请求伪造

一、漏洞定义 CSRF(跨站请求伪造)是一种客户端攻击,又称为“一键式攻击”。该漏洞利用了Web应用程序与受害用户之间的信任关系,通过滥用同源策略,使受害者在不知情的情况下代表攻击者执行操作。与XSS攻击不同,XSS利用用户对特定网站的信任,而CSRF则利用了网站对用户网页…

vscode教程

个人笔记&#xff08;整理不易&#xff0c;有帮助点个赞&#xff09; 笔记目录&#xff1a;学习笔记目录_pytest和unittest、airtest_weixin_42717928的博客-CSDN博客 个人随笔&#xff1a;工作总结随笔_8、以前工作中都接触过哪些类型的测试文档-CSDN博客 目录 一&#xff1a…

【SpringBoot3】SpringBoot入门

需求&#xff1a;使用 SpringBoot 开发一个web应用&#xff0c;浏览器发起请求 /hello后&#xff0c;给浏览器返回字符串 “hello world "。 步骤 ①. 创建Maven工程 ②. 导入spring-boot-stater-web起步依赖 <dependency> <groupId>org.springframework…

每天学习一个Linux命令之curl

每天学习一个Linux命令之curl 在Linux系统中&#xff0c;有很多有用的命令可以帮助我们与网络进行交互。一个非常常用的命令是curl&#xff0c;它是一个功能强大的工具&#xff0c;可用于发送、接收和处理各种网络请求。本文将详细介绍在Linux下使用curl命令的各种选项及其用法…

IntelliJ IDEA - Since Maven 3.8.1 http repositories are blocked

问题描述 新下载的 IDEA 在构建项目时&#xff0c;在下载引用的包时出现 “Since Maven 3.8.1 http repositories are blocked” 的问题。 原因分析 从 Maven 3.8.1 开始&#xff0c;不再支持 http 的包了。由于现在对网络安全的日益重视&#xff0c;都在向 https 转变&#…

虚拟M的改进

之前为了保留老习俗&#xff0c;虚拟M采用了和M调用一样的约定&#xff0c;这样的好处是习惯上保持一致&#xff0c;小伙伴提出现在是java了&#xff0c;还这样约定方法太啰嗦&#xff0c;确实是有点啰嗦&#xff0c;进行了改进。 改进为三个参数的&#xff0c;方法可以写在任…

SQLite 4.9的 OS 接口或“VFS”(十三)

返回&#xff1a;SQLite—系列文章目录 上一篇:SQLite字节码引擎&#xff08;十二&#xff09; 下一篇:SQLite 4.9的虚拟表机制(十四) 1. 引言 本文介绍了 SQLite OS 可移植性层或“VFS” - 模块位于 SQLite 实现堆栈底部 提供跨操作系统的可移植性。 VFS是Virtual File…

政安晨:【Keras机器学习实践要点】(二十)—— 使用现代 MLP 模型进行图像分类

目录 简介 设置 准备数据 配置超参数 建立分类模型 定义实验 使用数据增强 将补丁提取作为一个图层来实施 将位置嵌入作为一个图层来实施 MLP 混频器模型 FNet 模式 gMLP 模式 实施 gMLP 模块 政安晨的个人主页&#xff1a;政安晨 欢迎 &#x1f44d;点赞✍评论⭐…

【Leetcode每日一题】 动态规划 - LCR 166. 珠宝的最高价值(难度⭐⭐)(52)

1. 题目解析 题目链接&#xff1a;LCR 166. 珠宝的最高价值 这个问题的理解其实相当简单&#xff0c;只需看一下示例&#xff0c;基本就能明白其含义了 2.算法原理 想象一下&#xff0c;你正在玩一个寻宝游戏&#xff0c;游戏地图是一个二维网格&#xff0c;每个格子都藏有一…

神经网络中的超参数调整

背景 在深度神经网络学习和优化中&#xff0c;超参数调整一项必备技能&#xff0c;通过观察在训练过程中的监测指标如损失loss和准确率来判断当前模型处于什么样的训练状态&#xff0c;及时调整超参数以更科学地训练模型能够提高资源利用率。在本研究中使用了以下超参数&#x…

Golang 开发实战day08 - Multiple Return values

Golang 教程08 - Multiple Return values 1. Multiple return values 1.1 如何理解多个返回值&#xff1f; Go语言中的多返回值&#xff0c;就像你听了一首歌曲yellow&#xff0c;可以从歌曲里反馈出忧郁和害羞&#xff01;Goland的多个返回值就类似于如此&#xff0c;设定一…