微信小程序,用户订阅消息,判断订阅消息是否已经订阅

微信小程序,用户订阅消息,判断订阅消息是否已经订阅微信订阅消息分为一次性订阅和长期订阅 1 一次性订阅就是要用户点击一次触发订阅 服务端才能发送一次信息

大家好,欢迎来到IT知识分享网。

微信订阅消息的基础知识:

微信订阅消息分为一次性订阅和长期订阅

1、一次性订阅就是要用户点击一次触发订阅,服务端才能发送一次信息。点击多少次就能发送多少次。

2、长期订阅。服务端可以无限,但是教育、交通、医疗等行业才有长期订阅。

用户对小程序订阅权限的开关有两个开关,设置操作如下

点击小程序右上角的三个点,在弹出窗中找到设置。

微信小程序,用户订阅消息,判断订阅消息是否已经订阅

点通知管理,可以看到【接收通知】这里是一个通知的总开关,下面是小程序相关具体提醒的开关

微信小程序,用户订阅消息,判断订阅消息是否已经订阅

进点去可以看到【消息提醒】的开关。

微信小程序,用户订阅消息,判断订阅消息是否已经订阅

微信小程序代码实现订阅

下面主要是实现一次性订阅消息的代码:

wxml文件

    <button type="primary" bindtap="subscribeMessage">订阅提醒</button>

获取模版id

订阅消息发送消息时需要用到模板id.

开发者需要登录小程序管理后台 ,在「功能-订阅消息-公共模版库-一次性订阅」中查询可以申请的模板,审核通过后可使用。

模版有对应类目要求,符合类目要求的小程序可在公共模版库优先看到新版模版。

微信小程序,用户订阅消息,判断订阅消息是否已经订阅

类目需要搜合适的模板

微信小程序,用户订阅消息,判断订阅消息是否已经订阅

勾选需要的字段

微信小程序,用户订阅消息,判断订阅消息是否已经订阅

提交

微信小程序,用户订阅消息,判断订阅消息是否已经订阅

这里注意一下模板是和目录相关联的,如果选择不到可能是因为类目没有添加备忘录,要去增加一下。

微信小程序,用户订阅消息,判断订阅消息是否已经订阅

js文件

加入订阅消息代码:wx.requestSubscribeMessage(Object object)

 //授权订阅提醒 subscribeMessage(){ console.info('订阅消息!!!'); let tmplId ='LGpkXsxxxxPFE02z6Oxxxxv_eez0xxxxego'; wx.requestSubscribeMessage({ tmplIds: [tmplId], success (res) { if(res[tmplId]=='accept'){//如果点击允许 wx.showToast({ title: '订阅成功', }) } } }) }

 效果点击出现订阅效果

微信小程序,用户订阅消息,判断订阅消息是否已经订阅

判断订阅消息是否已经订阅

let id = 'LGpkXsQ396mr-xxxxxxxxxx6Ovd5w4v_eez0pYoQego' wx.getSetting({ withSubscriptions: true, success(res) { debugger console.log(res) if (res.subscriptionsSetting.mainSwitch) { // 用户打开了订阅消息总开关 if (res.subscriptionsSetting.itemSettings) { // 用户同意总是保持是否推送消息的选择, 这里表示以后不会再拉起推送消息的授权 let moIdState = res.subscriptionsSetting.itemSettings[id]; // 用户同意的消息模板id if (moIdState === 'accept') { wx.requestSubscribeMessage({ tmplIds: ['LGpkXsQ396mr-xxxxxxxxxx6Ovd5w4v_eez0pYoQego'], success(res) { wx.showToast({ title: '不会再拉起推送消息的授权,订阅成功', }) }, }) } else if (moIdState === 'reject') { console.log('拒绝了消息推送'); wx.showToast({ title: '拒绝了消息推送', }); wx.openSetting({ withSubscriptions: true, }); } else if (moIdState === 'ban') { wx.showToast({ title: '已被后台封禁', }) } } else { wx.requestSubscribeMessage({ tmplIds: ['LGpkXsQ396mr-xxxxxxxxxx6Ovd5w4v_eez0pYoQego'], success(res) { wx.showToast({ title: '订阅成功', }) }, }) } } else { wx.openSetting({ withSubscriptions: true, }) } } })

到这里微信前端发起的一次性订阅就完成了。后端服务只要发送消息推送就微信用户就可以收到订阅消息,后端代码实现可以 【微信小程序,用户订阅消息,后端服务发送订阅消息-CSDN博客】。

结尾:样例小程序二维码,自己做的一个免费好用的排班小程序

微信小程序,用户订阅消息,判断订阅消息是否已经订阅

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/137569.html

(0)
上一篇 2025-06-19 17:15
下一篇 2025-06-19 17:20

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信