微信公众号消息推送教程
微信每日定时推送消息提醒,这样的技术男友谁不爱呢!
欢迎专注微信公众号【凯小白学编程】
一、注册一个公众号
不多赘述,一般的程序员都会开一个自己的公众号来玩吧~
二、启用测试账号
因为公众号模板消息推送是服务号才有的功能,但是服务号只有企业才能注册,并且还得认证通过、显然对个人开发者很不友好,但是微信订阅号有一个功能是【公众平台测试账号】,这里可以体验服务号所有的功能
三、设置模板消息
进入公众平台测试账号后就能看到测试账号的appid和secret
appid和appsecret是获取我们token的唯一标识,而发送模板消息是token是必填的。用户关注后,就会在用户列表显示用户昵称和用户的openid,而这个openid就是我们发送模板消息时绑定的用户id,
接着就是配置我们想要发送的模板消息的消息模板。 消息模板的格式定义如下
自定义名称:{{value.DATA}}
前面的自定义名称就是我们实际想发送的内容标题,value是变量,每天更新,所有的变量都要以DATA结尾。
发出来的消息就类似于这样
四、代码
代码已经放在了github上可以下载直接运行
微信推送代码
https://github.com/kaixiaobai/WeChatMsg
只包含了天行和高德部分接口,其他接口可以另外扩充
主要的发送消息代码
@Component
public class WeChatMessage {private static final Logger logger = LoggerFactory.getLogger(WeChatMessage.class);public static final String TEMPLATE_URL = "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=";@Value("${WeChat.appid}")private String appid;@Autowiredprivate RedisUtil redisUtil;@Autowiredprivate WeChatToken weChatToken;/*** 微信模板消息,通用*/public WeChatMsgResult sendPublicMessage(String templateId, String toUserId, Map<String, Object> valueMap) {WeChatMsgResult weChatMsgResult = new WeChatMsgResult();// 获取access_tokenString accessToken = weChatToken.getAccessToken();// 设置模板消息基本参数Map<String, Object> map = new HashMap<>();map.put("touser", toUserId);map.put("template_id", templateId);map.put("appid", appid);try {weChatMsgResult = sendMessage(TEMPLATE_URL + accessToken, map, valueMap);} catch (IllegalAccessException | InstantiationException e) {logger.error("发送模板消息异常:{}", e.getMessage());}return weChatMsgResult;}/*** 发送消息* @param url 微信模板消息url*/private WeChatMsgResult sendMessage(String url, Map<String, Object> map, Map<String, Object> valueMap) throws IllegalAccessException, InstantiationException {map.put("data", valueMap);String msg = JSON.toJSONString(map);String post = HttpUtil.post(url, msg);logger.info("发送模板消息{}", msg);WeChatMsgResult weChatMsgResult = JSONObject.parseObject(post, WeChatMsgResult.class);logger.info("收到应答{}", weChatMsgResult.toString());return weChatMsgResult;}}
微信公众号消息推送教程相关推荐
- 微信公众号消息推送开发(模板消息):点击推送消息跳转到网页或者小程序(三)
需求场景: 点击推送的消息后跳转到小程序中的某个页面,或者跳转到某一个网页上,例如有这样一个需求,在商城平台购买产品后,需要通过公众号给用户推送订单详细并且点击消息可以看到对应的订单详情.以下我将在微 ...
- 微信公众号消息推送流
一.前期准备工作: 1.需要申请私人/公司的测试号-- 参考这篇文章 ,微信公众平台测试帐号申请 - 简书 (jianshu.com) 1.1.需要响应微信发送的Token请求: 注意:这里的端口必须 ...
- 专属微信公众号消息推送(java版)
前言:专属女朋友的微信推送消息,简单的写个文档. gitee地址:消息推送 所用框架及Api springboot搭建应用 天行数据Api(彩虹屁.早安语句.天气) 前置条件 申请微信公众号测试号及微 ...
- 微信公众号-消息推送
********步骤******** 1.登录微信公众号开发平台,进行企业认证. 2.获取appid.appsecret 3.查找相应的接口 *所有的操作都需要带有accessToken *可以先利用 ...
- 尝试开发微信公众号消息推送功能并且和小程序关联
之前写了几篇关于微信小程序的开发实践,总的来说没啥难度,感兴趣的请移步:使用Mpvue配合Weui开发面试题题库微信小程序,并且发布到正式环境,这一次我们来尝试开发一下微信公众号,那么公众号和小程序到 ...
- html消息推送微信,调用微信公众号消息推送
在微信公众号中对指定的已关注的用户进行消息推送 资源下载此资源下载价格为2D币,请先登录 资源文件列表 惟安在线设备数量监控 -/App.config , 458 惟安在线设备数量监控 -/bin/D ...
- java 实现微信公众号消息推送
注册微信公众号 这里主要用测试账号来演示:测试账号注册地址 正式账号注册地址:微信公众平台 设置消息模板 可参考微信公众号文档:微信公众号文档 模板根据需求设置(注意:参数长度不能超出微信规定,否则将 ...
- Java微信公众号消息推送
一.在项目的配置文件中配置公众号信息 # 微信公众号配置 wx:appid: **********secret: **************token: *********************a ...
- 微信公众号消息推送-模板消息发送
先注册一个微信公众号;或者申请接口测试号来进行开发: 接口测试号申请链接: https://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login ...
- 微信公众号消息推送【专属早安】,五分钟快速实现,不会编程也可以 【--网站已修复】
效果演示 提前准备 申请一个微信公众号测试号.地址:测试号申请 扫码登陆注册,注册成功后就会生成微信公号的appID和appsecret.[最后步骤需要] 页面往下滑 有一个测试号二维码,[需要接收消 ...
最新文章
- Windows搜索工具 — Everything
- 深度|人工智能赋能“新基建”产业的四方面及建议
- 云原生安全的一种新方法!
- AutowireCapableBeanFactory接口
- 公钥,私钥和数字签名这样理解轻松入门!
- 算法提高 数的划分 动态规划 无序
- 专业英语笔记:三次信息化浪潮
- Tomcat学习总结(7)——Tomcat与Jetty比较
- 您的博文被删除了(1)
- PMP课程笔记:第12章 项目采购管理
- 免费文字识别软件有哪些?分享三款不错的软件
- 腾讯地图api使用——地图选点自动定位到当前位置
- 加息对股市影响|加息会有什么后果
- Fedora9的虚拟机安装
- 国产电机驱动芯片TMI8870应用在智能马桶翻盖/翻圈上
- RuntimeError: Output 0 of SelectBackward is a view and is being modified inplace.
- C语言:初学者2--求π的值(3种方法)
- diy 服务器 支持 esxi,【我的技术我做主】IT屌丝DIY ESXI虚拟化服务器再度升级ESXI6.0...
- trs java_TRS Java应用开发接口概述
- 游戏服务器 linux windows,游戏服务器用windows还是linux的系统好?