小程序订阅消息推送工具类

简介: 小程序订阅消息推送工具类

直接上代码:

1.首先引入maven依赖:

<dependency>
    <groupId>com.github.binarywang</groupId>
    <artifactId>weixin-java-miniapp</artifactId>
    <version>3.8.0</version>
</dependency>

2.工具类:

/**
 * description: 微信小程序推送
 * create by: YangLinWei
 * create time: 2020/7/28 2:24 下午
 */
@Slf4j
public class SendMiniApp {
    private WxMaMsgService msgService;
    /**
     * description: 构造函数(初始化配置)
     * param: wxMpConfig 配置内容
     */
    public SendMiniApp(String appId, String appSercret) {
        if (StringUtils.isEmpty(appId)) {
            throw new RuntimeException("appId不能为空");
        }
        if (StringUtils.isEmpty(appSercret)) {
            throw new RuntimeException("secret不能为空");
        }
        WxMaDefaultConfigImpl config = new WxMaDefaultConfigImpl();
        config.setAppid(appId);
        config.setSecret(appSercret);
        WxMaServiceImpl wxMaService = new WxMaServiceImpl();
        wxMaService.setWxMaConfig(config);
        msgService = wxMaService.getMsgService();
    }
    /**
     * description: 发送订阅消息
     * param: openId 用户的openid
     * param: templateId 模板id
     * param: dataParam 参数内容
     */
    public void sendSubscribeMsg(String openId, String templateId, List<WxMaSubscribeMessage.Data> dataParam) throws WxErrorException {
        // 3.8.0版本使用的使用WxMaSubscribeMessage
        WxMaSubscribeMessage.WxMaSubscribeMessageBuilder builder = WxMaSubscribeMessage.builder();
        builder.toUser(openId);//推送消息的目标对象openId
        builder.templateId(templateId); //这里填写的就是在后台申请添加的模板ID
        builder.data(dataParam);//添加请求参数
        WxMaSubscribeMessage msg = builder.build();
        msgService.sendSubscribeMsg(msg);
    }
    /**
     * description: 发送订阅消息
     * param: openId 用户的openid
     * param: templateId 模板id
     * param: dataParam 参数内容
     * param: page 跳转链接
     */
    public void sendSubscribeMsg(String openId, String templateId, List<WxMaSubscribeMessage.Data> dataParam, String page) throws WxErrorException {
        // 3.8.0版本使用的使用WxMaSubscribeMessage
        WxMaSubscribeMessage.WxMaSubscribeMessageBuilder builder = WxMaSubscribeMessage.builder();
        builder.toUser(openId);//推送消息的目标对象openId
        builder.templateId(templateId); //这里填写的就是在后台申请添加的模板ID
        builder.data(dataParam);//添加请求参数
        builder.page(page); //添加跳转链接,如果目标用户点击了推送的消息,则会跳转到小程序主页
        WxMaSubscribeMessage msg = builder.build();
        msgService.sendSubscribeMsg(msg);
    }
}


目录
相关文章
|
JSON 小程序 API
小程序(三十四)微信小程序开启订阅消息推送
我这里记录一下我在配置订阅消息推送的时候发生的一些小问题吧,算是经验,给没有做过的同学避个坑。 官方文档地址:小程序订阅消息 | 微信开放文档 (qq.com)
384 0
|
小程序
小程序订阅消息推送简要流程图
小程序订阅消息推送简要流程图
137 0
小程序订阅消息推送简要流程图
|
小程序 API 开发工具
小程序消息推送入门 (订阅消息推送)
小程序消息推送入门 (订阅消息推送)
959 0
|
NoSQL 小程序 前端开发
uniapp小程序订阅消息推送+Thinkphp5后端代码教程示例
uniapp小程序订阅消息推送+Thinkphp5后端代码教程示例
404 0
|
缓存 小程序 Java
小程序订阅消息推送(含源码)java实现小程序推送,springboot实现微信消息推送
小程序订阅消息推送(含源码)java实现小程序推送,springboot实现微信消息推送
637 0
|
小程序 Java
借助云开发实现小程序模版消息推送(含源码)
借助云开发实现小程序模版消息推送(含源码)
261 0
|
缓存 移动开发 JSON
尝试开发微信公众号消息推送功能并且和小程序关联
之前写了几篇关于微信小程序的开发实践,总的来说没啥难度,感兴趣的请移步:[使用Mpvue配合Weui开发面试题题库微信小程序,并且发布到正式环境](https://v3u.cn/a_id_116),这一次我们来尝试开发一下微信公众号,那么公众号和小程序到底有什么区别呢?
尝试开发微信公众号消息推送功能并且和小程序关联
|
小程序
微信小程序消息推送通知模板id生成获取
微信小程序消息推送通知模板id生成获取
649 0
微信小程序消息推送通知模板id生成获取
|
数据库
fastadmin框架如何开启事务
引言: 数据库事务是一种重要的概念,它确保了一组数据库操作要么全部成功,要么全部失败,以保持数据的一致性。FastAdmin框架提供了方便的方式来处理数据库事务,本文将向你展示如何使用它来开启、提交和回滚事务。
133 1
|
Java
SpringSecurity-6-基于Filter实现图形验证码
SpringSecurity中有多种方式实现图像验证码,使用自定义过滤器去处理验证码逻辑是最简单的方式,只要将过滤器添加到合适的位置,当登录的时候,对验证码进行校验,成功就放行,失败则抛出异常。
189 0

热门文章

最新文章