使用到开源工具WxJava
这里环境使用到springboot 框架,废话不多说直接上干货。
pom.xml引用
<!-- https://mvnrepository.com/artifact/com.github.binarywang/weixin-java-miniapp -->
<dependency>
<groupId>com.github.binarywang</groupId>
<artifactId>weixin-java-miniapp</artifactId>
<version>4.3.3.B</version>
</dependency>
application配置
wx:
miniapp:
appid: xxxxxxxxxxxxx 对应小程序的appId
secret: xxxxxxxx 对应小程序的秘钥
msgDataFormat: JSON
templateId: xxxxxxxxxxx 对应你订阅消息得id
templateId具体申请在微信公众平台
具体如下
wx配置代码编写
import lombok.Data;
import org.springframework.boot.context.properties.ConfigurationProperties;
@Data
@ConfigurationProperties(prefix = "wx.miniapp")
public class WxMaProperties {
/**
* 设置微信小程序的appid
*/
private String appid;
/**
* 设置微信小程序的Secret
*/
private String secret;
/**
* 消息格式,XML或者JSON
*/
private String msgDataFormat;
}
import cn.binarywang.wx.miniapp.api.WxMaMsgService;
import cn.binarywang.wx.miniapp.api.WxMaService;
import cn.binarywang.wx.miniapp.api.impl.WxMaServiceImpl;
import cn.binarywang.wx.miniapp.config.WxMaConfig;
import cn.binarywang.wx.miniapp.config.impl.WxMaDefaultConfigImpl;
import org.springframework.boot.context.properties.EnableConfigurationProperties;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
@EnableConfigurationProperties(WxMaProperties.class)
public class WxMaConfiguration {
@Bean
public WxMaService wxMaService(WxMaProperties properties) {
WxMaDefaultConfigImpl config = new WxMaDefaultConfigImpl();
config.setAppid(properties.getAppid());
config.setSecret(properties.getSecret());
config.setMsgDataFormat(properties.getMsgDataFormat());
WxMaService service = new WxMaServiceImpl();
service.setWxMaConfig(config);
return service;
}
}
模板代码编写 这里注意模板对应的字段
具体代码文章来源:https://www.toymoban.com/news/detail-568116.html
import cn.binarywang.wx.miniapp.api.WxMaMsgService;
import cn.binarywang.wx.miniapp.api.WxMaService;
import cn.binarywang.wx.miniapp.bean.WxMaSubscribeMessage;
import org.springframework.core.env.Environment;
@AllArgsConstructor
public class pushTest {
private Environment environment;
punlic void wxpush {
WxMaMsgService wxMaMsgService = wxService.getMsgService();
// 3.8.0 版本使用的是Data
List<WxMaSubscribeMessage.MsgData> data = new ArrayList<>();
//下面的number1,thing3等数据,是需要根据申请的微信模板对应的,并不是每个人都一样
WxMaSubscribeMessage.MsgData data1 = new WxMaSubscribeMessage.MsgData("thing1", "你好啊");
WxMaSubscribeMessage.MsgData data2 = new WxMaSubscribeMessage.MsgData("car_number3", "京A00000");
WxMaSubscribeMessage.MsgData data3 = new WxMaSubscribeMessage.MsgData("thing4", "超时提示");
data.add(data1);
data.add(data2);
data.add(data3);
// 3.8.0版本使用的使用WxMaSubscribeMessage
WxMaSubscribeMessage subscribeMessage =
WxMaSubscribeMessage.builder()
//这里添加的是推送消息的目标对象openId
.toUser("xxxxx")
//这里填写的就是在后台申请添加的模板ID
.templateId(environment.getProperty("wx.miniapp.templateId"))
//添加请求参数
.data(data)
//添加跳转链接,如果目标用户点击了推送的消息,则会跳转到小程序主页
.page("/pages/index/index")
.build();
try {
//推送消息
wxMaMsgService.sendSubscribeMsg(subscribeMessage);
System.out.println("推送模板消息成功");
} catch (Exception e) {
System.out.println("推送失败:" + e.getMessage());
}
}
}
然后和前端一配合就完事了,非常简单文章来源地址https://www.toymoban.com/news/detail-568116.html
到了这里,关于Java开发微信小程序订阅消息推送的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!