订阅消息开发步骤:

  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. 数据算法 --hadoop/spark数据处理技巧 --(9.基于内容的电影推荐 10. 使用马尔科夫模型的智能邮件营销)

    九.基于内容的电影推荐 在基于内容的推荐系统中,我们得到的关于内容的信息越多,算法就会越复杂(设计的变量更多),不过推荐也会更准确,更合理. 本次基于评分,提供一个3阶段的MR解决方案来实现电影推荐. ...

  2. 论文《Entity Linking with Effective Acronym Expansion, Instance Selection and Topic Modeling》

    Entity Linking with Effective Acronym Expansion, Instance Selection and Topic Modeling 一.主要贡献 1. pro ...

  3. 向C++之父Bjarne Stroustrup致敬

    2013-04-25 21:30 (分类:社会人生) 非常好的文章 C ++ 的 背 影                                     ——C++之父Bjarne Strou ...

  4. 【转载】SPI总线和I2C总线的异同点

    来源:https://blog.csdn.net/lishun1422840684/article/details/77776763 总结的简单.明了.适用! 一:SPI接口的全称是"Ser ...

  5. Java的七大排序

    一.各个算法的时间复杂度 二,具体实现 1.直接选择排序 基本思想:在长度为n的序列中,第一次遍历找到该序列的最小值,替换掉第一个元素,接着从第二个元素开始遍历,找到剩余序列中的最小值,替换掉第二个元 ...

  6. mysql随机抽取数据

      -- 慢 ; -- 较慢 SELECT * FROM `table` WHERE id >= (SELECT floor( RAND() * ((SELECT MAX(id) FROM `t ...

  7. Linux中screen命令

    screen是一款由GNU计划开发的用于命令行终端切换的自由软件.用户可以通过该软件同时连接多个本地或远程的命令行会话,并在其间自由切换.GNU Screen可以看作是窗口管理器的命令行界面版本.它提 ...

  8. 【HDU - 1029】Ignatius and the Princess IV (水题)

    Ignatius and the Princess IV  先搬中文 Descriptions:   给你n个数字,你需要找出出现至少(n+1)/2次的数字 现在需要你找出这个数字是多少? Input ...

  9. vue router引入路由与路由配置容易犯错的地方与常见的报错与处理报错

    首先npm安装vue-router插件,就不说了其次: 先看下我本地的目录结构吧 第一步:在src目录下新建一个专门存放router的index.js文件里面的内容为: import Vue from ...

  10. Python小白

      .IDLE软件为内建于CPython的集成开发环境(IDE),包括编辑器,编译或解释器,调试器       .py(后缀保存) 2.行一,单行注释     多行,”””    ‘’’  之后,内建 ...