微信服务号推送服务模板消息

  • 业务需求
    • 认证的服务号
    • 服务号中添加模板
    • 获取access_token
    • 调用后台代码,发送模板消息

业务需求

项目中存在金额待支付,需要实时提醒微信用户;小程序的服务推送是一次性的,且需要用户点击授权才能推送,授权一次可发送一条,不符合业务需求;在查看官方文档后发现服务号的模板推送是可以实现的,具体可查看 接口实现 以及 模板消息运营规范。

认证的服务号

要使用模板功能,该服务号必须是认证的,且接收的对象必须关注此服务号,否则无法推送

服务号中添加模板

在添加模板之前,需要开通模板消息接口服务,可使用的接口以及限制可在最地下的接口权限查看。

获取access_token

发送模板,需要用到 access_token ,access_token 的获取需要用到 服务号的 appid 及开发者密码 secret,根据文档调用 GET 接口即可获取到;

也可以前往 服务号接口调试,填写对应信息获取测试token

在使用是可能会报错 ip 无效,将该ip添加到白名单中即可

调用后台代码,发送模板消息

    @Testpublic void httpTest2() {RestTemplate restTemplate = new RestTemplate();String ACCESS_TOKEN = "ACCESS_TOKEN ";String uri = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=" + ACCESS_TOKEN;HttpHeaders headers = new HttpHeaders();headers.setContentType(MediaType.APPLICATION_JSON_UTF8);HttpEntity<String> entity = new HttpEntity<>(headers);String strbody = restTemplate.postForObject(uri, getJsonParas(), String.class);log.info(strbody);}private JSONObject getJsonParas() {JSONObject jsonObject = new JSONObject();// openidjsonObject.put("touser", "ocC-bdsdsdsdsdsdsu1_dOA");  // 模板id jsonObject.put("template_id", "zoL2ZADT0Apaaalq4khHFdLjRszwUemR0Iu8TFihC_k");// urljsonObject.put("url", "http://weixin.qq.com/download");JSONObject miniprogram = new JSONObject();miniprogram.put("appid","wx79740f85108e5502");miniprogram.put("pagepath","pages/homeTab/homeTab");jsonObject.put("miniprogram",miniprogram);JSONObject data = new JSONObject();JSONObject first = new JSONObject();first.put("value", "您有一笔待支付费用,请尽快支付!");JSONObject keyword1 = new JSONObject();keyword1.put("value", "AAA43434");keyword1.put("color", "#173177");JSONObject keyword2 = new JSONObject();keyword2.put("value", "66666 元");keyword2.put("color", "#173177");JSONObject keyword3 = new JSONObject();keyword3.put("value", "产品月付");keyword3.put("color", "#173177");JSONObject keyword4 = new JSONObject();keyword4.put("value", "请尽快支付!");JSONObject remark = new JSONObject();remark.put("value", "感谢您的使用!!!");data.put("first", first);data.put("keyword1", keyword1);data.put("keyword2", keyword2);data.put("keyword3", keyword3);data.put("keyword4", keyword4);data.put("remark", remark);jsonObject.put("data", data);return jsonObject;}

此时,我们就可以在微信上收到一条服务通知

微信服务号推送服务模板消息相关推荐

  1. 微信公众号推送多图文消息,直接跳转至外部链接(wxJava)

    文章目录 前言 一.解决思路 1.公众号后台设置 2.客服消息 3.google & baidu 寻找答案 4.关注后自动推送(正解) 总结 前言 需求:用户关注公众号后,如何在微信推送的多图 ...

  2. 微信小程序通过服务号推送模板消息

    前言 公司要做一款新的微信小程序,因为业务需求要加入消息推送.因为之前APP是通过服务号推送给用户消息的,所以微信小程序要做消息推送也是首先想到了通过服务号推送.事实上在使用过程中服务号推送还是非常好 ...

  3. C#服务号推送微信公众号模板消息

    一.准备工作 微信公众平台:https://mp.weixin.qq.com/ 申请测试账号:https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?ac ...

  4. 服务通知——小程序消息推送、模板消息推送demo

    一.开发前准备 微信模板消息发送API (建议多看) APPID (公众账号appid) SECRET(密钥) Template_Id(模板ID) 二.代码实现 1. ConfirmTemplate( ...

  5. 微信公众号推送消息前期准备

    微信公众号推送消息使用手册 1.准备 ​ 微信公众平台注册公众号.(https://mp.weixin.qq.com/) ​ 公众号进行"微信认证" ​ 开通"订阅通知& ...

  6. Java微信公众号推送消息

    Java微信公众号推送消息 1.导入pom文件 2.编写yml文件 3.配置文件 4.配置bean 5.service 模板消息主要代码 6.外放接口测试 ==注:== 1.控制台报40164,解决方 ...

  7. 【设计模式】之观察者模式——简单的“微信公众号推送消息给相关用户”

    目录 一.简单介绍 二.观察者模式涉及的4个角色 三.观察者模式demo:简单的"微信公众号推送消息给相关用户" 一.简单介绍 定义对象间"一对多"的依赖关系. ...

  8. python爬虫公众号_python爬虫_微信公众号推送信息爬取的实例

    问题描述 利用搜狗的微信搜索抓取指定公众号的最新一条推送,并保存相应的网页至本地. 注意点 搜狗微信获取的地址为临时链接,具有时效性. 公众号为动态网页(JavaScript渲染),使用request ...

  9. 微信公众号推送课表及天气(事无巨细+JavaScript版+python版)

    微信公众号推送课表及天气 22.10.16更新 我已经做出来更优秀的直接在聊天列表中推送的了! 请移步 企业微信推送 超强版! 基础 简介 作者:申也 个人网站:申也个人网站(www.dongshen ...

  10. SpringBoot实现发送邮件、发送微信公众号推送

    SpringBoot实现发送邮件.发送微信公众号推送 文章目录 SpringBoot实现发送邮件.发送微信公众号推送 SpringBoot实现发送邮件 pom.xml application.yml ...

最新文章

  1. Unix/Linux环境C编程新手教程(22) C/C++怎样获取程序的执行时间
  2. Java bytecode instruction listings
  3. C++不同数据类型的转换
  4. Derangement(AtCoder-3525)
  5. Spring Boot相关
  6. idea中拉取项目时 没有文件_idea编译器中maven项目获取路径的方法
  7. 分布式锁实现的几种方式(DB,Redis,Zookeeper)
  8. 那些基础的线程知识,你都懂了吗?| CSDN 博文精选
  9. js事件---事件流
  10. 最简单的BufferQueue测试程序(九)
  11. Android图片控件,跟随列表(recyclerView)的上下滚动而同步平移。
  12. FISCO BCOS(三)——— 部署及调用HelloWorld合约
  13. 2021年江苏省高考成绩什么时候可以查询,2021年江苏高考成绩什么时候出来 成绩查询时间...
  14. IDEA中Activate Power Mode插件 取消抖动
  15. TIA protal与SCL从入门到精通(1)——SCL编程入门
  16. Gaussian09 optimization trajectory: python script
  17. C#Winform使用火狐firefox内核GeckoWebBrowser
  18. DGUS组态软件中图标旋转显示如何使用
  19. 2022年10月24日程序员节日快乐
  20. pb一步步开发APP

热门文章

  1. 【清华大学】操作系统 陈渝 Part2 —— 中断、异常和系统调用
  2. 百度指数使用小技巧(转)
  3. 基于微信小程序的在线考试系统【毕业设计源码】
  4. VMware安装虚拟机操作步骤[史上最详细]
  5. 如何降低网站跳出率方法
  6. 2.1.5 物理路径泄漏_最新的泄漏的Windows 8.1 Build显示出继续关注波兰语和改进功能...
  7. Spring Boot基础学习08 - Spring Boot整合Redis
  8. 本体论:Gene Ontology (基因本体)
  9. 什么是对比度、亮度?教你在线调整图片色彩
  10. 北京海淀驾校学车经验