使用Java接入小程序订阅消息!
更新完微信服务号的模板消息之后,我又赶紧把微信小程序的订阅消息给实现了!之前我一直以为微信小程序也是要企业才能申请,没想到小程序个人就能申请。
消息推送平台推送下发【邮件】【短信】【微信服务号】【微信小程序】【企业微信】【钉钉】等消息类型。
本想着跟微信服务号的模板消息一样,我去申请一个「测试号」,就能下发微信小程序的订阅消息了。但微信小程序的订阅消息一直不支持「测试号」下发。
于是,我就注册了一个微信小程序,拿到我的小程序appId和secret,并在微信后台创建了几个订阅消息的模板。

紧接着,这个把小程序的账号就接入到消息推送平台的账号管理体系下:

写几行代码得到刚才创建的模板,顺便跟前端来个简单的交互:


改几行代码,把具体调用微信的逻辑给补上,有SDK的加持下这种代码就是10min就完成了,非常简单。

实现小程序的订阅消息推送,我花的时间最长就花在这下面啦:
1、拥有自己的小程序(拥有调试基础)
2、让自己的登录到这个小程序里(得到openId)
3、小程序弹窗让我能授权给微信发送订阅消息(得到推送权限)
小程序的账号我已经创建好了,但是小程序是没有任何内容的。于是我就在小程序的后台点点点,顺便看看小程序一般是怎么开发的。于是,我就看到了微信小程序的开发者工具:
https://developers.weixin.qq.com/miniprogram/dev/devtools/download.html
下载了之后,这个小工具给我推荐「云开发」,只要花点钱我就可以调用云函数了。虽然要19.9块,有点肉疼。但省时间的事,我咬咬牙就上了。

完了以后,我在小程序工具箱里翻了好几个模板,看看有没有我想要的功能:登录小程序获取openId、弹窗让我授权模板发送消息。你别说,真给我翻到一个:

我是没做过小程序的,自然就不会小程序开发,于是就只能摸石头过河了。花了一天多,发现我在这个demo项目里获取的openId就是死活的调不通小程序(报错就说不合法openId)。
经过漫长的调试,我忍不了了,再这样耗下去是不行的了。我直接去GitHub看看有没有现成的demo,随便一搜,还真的有。

https://github.com/zhangkaizhao/wxapp-subscribe-message-demo
直接将「wxapp」文件下导入到小程序的开发工具里,一看,还真能用,代码又少。回看同步openId的代码,原来是要调接口请求微信做鉴权的呀。

于是我在消息推送平台里也临时写了接口进行鉴权,在小程序调用登录的时候改下入参就完事咯。


经过登录凭证校验之后,我们就能拿到openId,把订阅消息的权限界面给唤起,点击允许,就能在消息推送平台下发送一条小程序的订阅消息啦。


代码方面我就不细说啦,感兴趣的同学可以把项目搞下来玩玩,源码都是有的。这几天还在疯狂更新中,看看目前的消息渠道接入的情况吧?
如果想学Java项目的,强烈推荐我的开源项目消息推送平台Austin(8K stars) ,可以用作毕业设计,可以用作校招,可以看看生产环境是怎么推送消息的。开源项目消息推送平台austin仓库地址:
消息推送平台推送下发【邮件】【短信】【微信服务号】【微信小程序】【企业微信】【钉钉】等消息类型。
使用Java接入小程序订阅消息!的更多相关文章
- uni-app + .NET 7实现微信小程序订阅消息推送
微信小程序的订阅消息是小程序的重要能力之一,为实现服务的闭环提供更优的体验.订阅消息我们应该经常见到,比如下单成功之后的服务通知,支付成功后的支付成功通知,都属于小程序的订阅消息. 本文只实现一次性订 ...
- 微信小程序的模板消息与小程序订阅消息
小程序订阅消息 功能介绍 消息能力是小程序能力中的重要组成,我们为开发者提供了订阅消息能力,以便实现服务的闭环和更优的体验. 订阅消息推送位置:服务通知 订阅消息下发条件:用户自主订阅 订阅消息卡片跳 ...
- 微信小程序订阅消息,我踩过的坑都在这里了!
旧的模板消息将在 2020 年 1 月 10 号全面下架,也就是今天,不过貌似现在还可以用!!!我已经改好了,只不过还没有上线,准备坚持到最后一天! 0.订阅消息 简单介绍一下订阅消息的特点: 用户授 ...
- 微信小程序订阅消息
概述 消息能力是小程序能力中的重要组成,我们为开发者提供了订阅消息能力,以便实现服务的闭环和更优的体验. 订阅消息推送位置:服务通知 订阅消息下发条件:用户自主订阅 订阅消息卡片跳转能力:点击查看详情 ...
- 微信小程序订阅消息调研
相关资料 背景:微信模板消息已正式下架,改为订阅消息,详情如下: 服务变更通知 订阅消息:订阅消息相关内容如下: 订阅消息 接口设计 获取接口访问凭证 :根据appId和secret获取接口访问凭证a ...
- node配置微信小程序解密消息以及推送消息
上一篇文章介绍过 微信小程序配置消息推送,没有看过的可以先去查看一下,这里就直接去把那个客服消息接口去解密那个消息了. 在这里我选择的还是json格式的加密. 也就是给小程序客服消息发送的消息都会被微 ...
- node.js微信小程序配置消息推送
在开发微信小程序时,有一个消息推送,它的解释是这样的. 消息推送具体的内容是下面的这个网址 https://developers.weixin.qq.com/miniprogram/dev/fra ...
- 微信小程序模板消息后端代码
利用spring 事件发送模板消息 1.定义事件 import com.ruoyi.project.salerauth.domain.TemplateMessage; import org.sprin ...
- 微信小程序订阅
微信小程序订阅 摘要 1.基于promise封装微信小程序订阅 2.解决由于微信基础库版本低下的兼容 3.解决“总是保持以上选择,不再询问”的取消状态 主要运用API: requestSubscrib ...
- java的小程序在html中的运行测试
java的小程序在html中的运行测试,打开vs2012,以网站模式打开,生成,调用iis临时服务器运行.
随机推荐
- linux下opencv contrib安装
opencv安装 1.1 安装依赖 sudo apt-get update sudo apt-get install build-essential sudo apt-get install cmak ...
- 解决Pycharm不能识别selenium的部分提示代码
这是解决前,pycharm没有提示相关的webelement的代码,例如:send_keys, click 之类的 把鼠标指针放在 selenium 这个单词上就能看到这一串路径 然后找到这个路径的文 ...
- ACwing语法基础课第一节课例题与习题及个人总结
第一次课例题 若涉及到浮点数的计算,float一般是6到7位有效数字,double一般是15到16位有效数字,但是为了方便起见,建议直接设为double,因为若涉及浮点数的乘除运算,使用float类型 ...
- RKO队——冲刺随笔(5)
这个作业属于哪个课程 至诚软工实践F班 这个作业要求在哪里 第五次团队作业:项目冲刺 这个作业的目标 记录冲刺计划.要求包括当天会议照片.会议内容以及项目燃尽图(项目进度) 1.昨日进展 小程序大致完 ...
- 语法分析~LL1的实现
语法分析之 LL1分析法实现 一.设计目的 根据某一文法编制调试LL(1)分析程序,以便对任意输入的符号串进行分析.本次实验的目的主要是加深对预测分析LL(1)分析法的理解. 二.设计要求 程序输入/ ...
- idea的tomcat控制台输出乱码
tomcat乱码问题 idea的tomcat控制台输出乱码 找到自己的安装目录 用vscode打开 ctrl+f打开搜索 输入encoding 最后一个是用来给idea中的控制台输出 --->改 ...
- 七、CSS网格
构造一个5*5的网格,如下图所示,同一颜色表示同个区域,黑线表示间隔5px 1.普通方式建立网格 <!DOCTYPE html> <html> <body> < ...
- mymath.so共享库
共享库的使用(.so)文件 1.共享库的概念 2.创建共享库命令 # 1.将.c生成.o文件,(生成与位置无关的代码-fPIC)gcc -c add.c -o add.o -fPIC # 2.使用 ...
- class1,2,3,4,5,6,7
//测试你是哪一类学者 #include<stdio.h> int main() { int ans; char words[5000]; printf("网课学习让一些人喜一些 ...
- python之序列化与反序列化
#!/usr/bin/env python# -*- coding:utf-8 -*-#Author:QiFeng Zhang'''序列化反序列化之json应用'''import json #导入js ...