小程序模板订阅操作【小程序订阅消息】

news/2024/7/20 3:45:58 标签: 小程序, 前端

一、功能和消息类型可查看官网文档、

链接如下:https://developers.weixin.qq.com/miniprogram/dev/framework/open-ability/subscribe-message.html

二、操作流程

步骤一:【前端】获取模板 ID

在微信公众平台手动配置获取模板 ID:
登录 https://mp.weixin.qq.com 获取模板,如果没有合适的模板,可以申请添加新模板,审核通过后可使用。
在这里插入图片描述

步骤二:【前端】获取下发权限

一次性订阅消息、长期订阅消息,详见接口 wx.requestSubscribeMessage

设备订阅消息,详见接口 wx.requestSubscribeDeviceMessage

代码:

// 获取到tmpid
const tmpid = "dkEmEk5i4BYmMW9pXu1ovGAbC_VCogzKPKpGU-xxxxx";
// 调用方法
wx.requestSubscribeMessage({
		tmplIds: [tmpid],  // 需要订阅的消息模板的id的集合,一次调用最多可订阅3条消息
		success(res) {
			console.log('res', res)
		if (res[tmpid] === 'accept') {
			console.log("订阅成功!")
		} else if (res[tmpid] === 'reject') {
			console.log("订阅失败")
		}
	},
	fail(err) {
		console.log(err, '订阅消息失败');
	}
})
步骤三:【后端】调用接口下发订阅消息

一次性订阅消息、长期订阅消息,详见服务端接口 subscribeMessage.send

设备订阅消息,详见服务端接口 hardwareDevice.send

注意事项

用户勾选 “总是保持以上选择,不再询问” 之后,下次订阅调用 wx.requestSubscribeMessage 不会弹窗,保持之前的选择,修改选择需要打开小程序设置进行修改。

订阅消息事件推送

1、当用户触发订阅消息弹框后,用户的相关行为事件结果会推送至开发者所配置的服务器地址或微信云托管服务。

2、当用户在手机端服务通知里消息卡片右上角“…”管理消息时,相应的行为事件会推送至开发者所配置的服务器地址或微信云托管服务。(目前只推送取消订阅的事件,即对消息设置“拒收”)

3、调用订阅消息接口发送消息给用户的最终结果,会推送下发结果事件至开发者所配置的服务器地址或微信云托管服务。

订阅消息添加提醒

用户在订阅小程序长期订阅消息时,可以根据自己的使用情况添加提醒。添加后,用户在收到消息时,在微信内将由横幅通知提醒。

当用户添加了提醒,开发者通过wx.getSetting获取的该模板的订阅状态为’acceptWithForcePush’。

订阅弹窗样式如下:
在这里插入图片描述


http://www.niftyadmin.cn/n/909292.html

相关文章

https协议原理、中间人问题

一、数据传输类型(中间人问题) 1 明文传输: 【问题】相当于裸奔、任何第三方都可拦截数据。 2 对称加密: 【特点】传输的数据是通过加密之后的密文。 【问题】当第三方(中间人) 可以充当客户端、获取到服务…

关于C#中的抽象类、抽象方法和虚方法的探究

2016年的第一篇文章,容我先喷喷新年的情怀,..........,好了,喷的差不多了。 在面向对象中,我们需要对类进行横向和纵向的认识,不同的类有不同特色的成员,同时在不同类的继承中,子类…

react-router-dom v6版本常用功能小计

github地址:https://github.com/remix-run/react-router/blob/main/docs/getting-started/tutorial.md demo地址:https://stackblitz.com/edit/github-agqlf5 一、安装 npm install react-router-dom6二、使用 BrowserRouter, Routes, Route 这里注意…

在微信小程序中使用自定义字体【font-family】、同时在canvas

一、本地准备字体文件 例如 otf文件 二、上传通过网站转换成base64格式 css文件 网站传送门:https://transfonter.org/ 用法如下 三、在【app.wxss】文件中引入 四、遇到的问题 想在文件 canvas 中使用的话,必须在当前的文件中引入一次,才…

关于mysql运行效率优化注意事项及要点

1. SQL优化的原则是:将一次操作须要读取的BLOCK数减到最低,即在最短的时间达到最大的数据吞吐量。 调整不良SQL通常能够从下面几点切入: ? 检查不良的SQL,考虑其写法是否还有可优化内容 ?检查子查询 考虑SQL子查询能否够用简单连接的方式…

antd 时间框组件如何修改默认中文?

antd 官方文档方案&#xff1a;https://ant.design/docs/react/faq-cn#/ import moment from moment import locale from antd/lib/date-picker/locale/zh_CN import moment/locale/zh-cn moment.locale(zh-cn)<RangePicker locale{locale}/>改之前 改之后

简单的百度地图点击获取当前地理坐标

在很多的时候我们需要在地图上点击一个地方&#xff0c;然后获取当前地点的经度和纬度值&#xff0c;代码如下&#xff1a; <!DOCTYPE html> <html> <head> <meta http-equiv"Content-Type" content"text/html; charsetutf-8" /> …

项目中使用 CSS Modules 用法

CSS Modules 用法 地址&#xff1a;阮一峰博客教程 一、案例 https://github.com/ruanyf/css-modules-demos $ git clone https://github.com/ruanyf/css-modules-demos.git 二、配置 webpack.config.js。 module.exports {entry: __dirname /index.js,output: {publicPath…