订阅消息开发步骤:

  1、小程序管理后台添加订阅消息的模板

  2、小程序前端编写调用(拉起)订阅授权

      wx.requestSubscribeMessage({ tmplIds: ['34fwe1211xxx'], success (res) { } })

  3、后台通过小程序接口发送订阅消息

//$accessToken的值需要用小程序的appid和密码为参数,通过接口:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
$url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=".$AccessToken;
$message='通过';
$data='请点击该条信息,前往小程序查看内容';
$post = array(
'touser'=>$openid, //接受消息用户的openid
'template_id'=>"34fwe1211xxx", //发送提醒审核用户信息的模板
'page'=>"pages/index/index", //设置点击推送的订阅消息跳到首页
'data'=>array(
'phrase1'=>array('value'=>$message),//严格文档phrase类型
'thing3'=>array('value'=>$data),//严格文档thing类型
'date2'=>array('value'=>date('Y年m月d H:i',time()))//严格文档date类型
)
http_curl_post_json($url,$post);

最近开发的小程序项目要添加订阅消息功能,因为项目的小程序不能申请永久订阅模板,所以只能弄一次性订阅消息模板,看了官方文档结合自己开发,总结如下:
   1、用户发生点击行为(订阅)或者发起支付回调后,才可以调起(拉起)订阅消息界面
     2、tmplIds参数:需要订阅的消息模板的id的集合,一次调用最多可订阅3条消息-------意思是:一次调用(拉起)最多三条订阅消息模板,即用户最多能订阅3种类型消息模板的消息,而不是说订阅一次后,可发送三条消息
     3、勾选了"总是保持以上选择,不在询问",按钮后,很多开发者会误解为:勾选后,即一次性订阅消息变成永久订阅,即不用用户再次授权,就可以发送无数条信息。
          这种理解是错误的,这个勾选其实是勾选后,下次用户触发订阅消息功能就不会弹出授权窗口了
     4、用户点击触发订阅授权并订阅后,官方没有限制后台多久之内发送该次消息,但只能发送一次,即用户点击订阅,订阅消息只能发送一次,发送订阅消息后客户收到了,客户要想再次收到订阅消息,则必须要客户在小程序再次同意订阅该消息(对通知业务影响很大,限制了业务扩展)

  5、订阅消息可理解为无限制订阅,但每次订阅的有效期为一次性,即订阅到发送后该次的有效期就结束了

订阅消息---由于微信小程序取消模板消息,限只能开发订阅消息的更多相关文章

  1. 微信小程序发送模板消息

    微信小程序发送模板消息 标签(空格分隔): php 看小程序文档 [模板消息文档总览]:https://developers.weixin.qq.com/miniprogram/dev/framewo ...

  2. 微信小程序 template模板使用

    参考文章: 微信小程序-template模板使用

  3. 微信小程序的模板消息与小程序订阅消息

    小程序订阅消息 功能介绍 消息能力是小程序能力中的重要组成,我们为开发者提供了订阅消息能力,以便实现服务的闭环和更优的体验. 订阅消息推送位置:服务通知 订阅消息下发条件:用户自主订阅 订阅消息卡片跳 ...

  4. 微信小程序之模板消息推送

    最近在用sanic框架写微信小程序,其中写了一个微信消息推送,还挺有意思的,写了个小demo 具体见官方文档:https://developers.weixin.qq.com/miniprogram/ ...

  5. 微信小程序 发送模板消息的功能实现

    背景 - 小程序开发的过程中,绝大多数会满足微信支付 - 那么,作为友好交互的体现,自然就会考虑到支付后的消息通知咯 - 所以,我的小程序项目也要求完成这个效果,so.分享一下自己的实现步骤,以方便道 ...

  6. 微信小程序template模板与component组件的区别和使用

    前言: 除了component,微信小程序中还有另一种组件化你的方式template模板,这两者之间的区别是,template主要是展示,方法则需要在调用的页面中定义.而component组件则有自己 ...

  7. 如何在微信小程序的模板渲染中使用JS?

    在微信小程序中使用模板渲染时,可能需要用JS对其进行处理. <view class="price text-red text-lg"> <!-- 价格保留两位小数 ...

  8. 重磅消息:微信小程序支持长按二维码进入

    之前微信小程序一般通过以下入口进入: 而用户经常使用“长按二维码”识别应用的功能一直未开放,据酷客多了解,微信安卓6.5.6内测版已经支持长按二维码识别和进入小程序,意味着把小程序二维码分享给朋友,或 ...

  9. 微信小程序:模板消息推送提示{“errcode”:41030,”errmsg”:”invalid page hint: [gP1eXXXXXX]”}

    在开发小程序 模板消息定时推送功能时,在开发版测试程序功能运行正常,但提交到线上后提示报错{“errcode”:41030,”errmsg”:”invalid page hint: [gP1eXXXX ...

随机推荐

  1. Vue过滤器、生命周期函数和vue-resource

    一.过滤器 使用例子: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

  2. Mysql 在线新建或重做主从

    1. 前言 以前给 Mysql 数据库做主从,都是在主服务器停服的情况下做的.但是最近有一个项目,已经上线几天了,数据库也单服务器跑了几天,才确定要给 Mysql 服务器做一个主从架构,简单的一主一从 ...

  3. Day1前端学习之路——概述

    终于下定决心要好好学习前端知识了,以后会把学习过程中的一些随笔记录在这里.HTML.CSS.JavaScript这三大前端语言在大三的时候就有所接触,但是学习的不够深入,这一次希望能够坚持下去. 学习 ...

  4. 手动使用I2C协议写入24C02C

    刚尝试用AT89C52单片机使用IIC总线协议读写AT24C02C,我忽然想能否用手动调整开关的方式写入AT24C02C?于是,便尝试了一下,结果果然成功了. 关于IIC总线,这篇文章写的很详细:ht ...

  5. vuex 状态管理 入门

    vuex是什么 是一个对 数据状态实现集中式管理 的工具.可以解决组件之间传递的问题 多组件共享状态(变量),有一个数据好多组件都用 组件数大于2,任何一个组件修改其他组件都要改变 实现组件通信 St ...

  6. vue垂死挣扎系列(一)——vue-cli快速搭建

    项目安装(windows10安装环境+vue-cli 2.x) 安装node 在官网上下载稳定版本的node node.js官网 一路傻瓜安装 测试是否安装成功 cmd中node --version ...

  7. C++ 实现string转BYTE

    用于将形如"0x1A"的string转成BYTE类型 代码如下, 有问题欢迎指出 bool str2byte(const std::string &str, BYTE &a ...

  8. Dalvik虚拟机和Art虚拟机

    Dalvik虚拟机 DVM是Dalvik Virtual Machine的缩写,是Android4.4及以前使用的虚拟机,所有android程序都运行在android系统进程里,每个进程对应着一个Da ...

  9. postgresql 文件布局

    我们知道linux中一个思想:一切皆文件,那么在我们安装完postgresql数据库后,她长什么样呢?本文带着你一起揭开她的面纱,看看postgresql的文件布局. 说明:由于安装测试的版本是10. ...

  10. libmodbus库linux 嵌入式设备中的使用

    libmodbus库的交叉编译:1]到libmodbus官网https://libmodbus.org/download/下载安装包,内部自带configure文件,官网推荐v3.1.6稳定版.另外注 ...