博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
微信小程序模板消息推送实现(java后台)(微信平台已下架该接口)
阅读量:4090 次
发布时间:2019-05-25

本文共 2134 字,大约阅读时间需要 7 分钟。

#(Notice:以下所有经验也是我根据网上的经验整理的,如有侵权可以联系我删除,Wx:IT_Ezra,QQ 654303408。 有问题讨论也可联系我,QQ同上。)

#(Tips:我是第一次开发,一个刚毕业的java工程师,我觉得我并非天赋异禀,我能学会,相信聪敏的你,一定可以)

(PS:首先,当我们需要使用模板消息的时候,肯定是基于一定的需求,可能是小程序,可能是公众号推广,所以也一定会涉及到微信的后台,当然该功能的实现并不需要和支付一样去深度了解开发文档,其实过程很十分简单。基础扎实即可)

#准备工作

  • 首先先上官方文档

  • 有些事情是需要前端做的,去申请formId,去申请teamplateId,去拿微信的基础信息,比如appid,appsecret,appkey。反正官方需要的东西,要先准备好。然后开始写接口。
  • 创建推送消息类(实体)。这个实体很重要,要用restTemplate来进行http请求。不知道为什么,我重命名到一个自己的名字,没用,可能是我有些细节没注意。反正就先用这个了。
public class weiXinTeamplateMsg{    private String touser;//用户openid    private String template_id;//模版id    private String page = "index";//默认跳到小程序首页    private String form_id;//收集到的用户formid    private String emphasis_keyword = "keyword1.DATA";//放大那个推送字段    private Map
data;//推送文字}
  • 这个类就是自己所需要的内容的一个实体,相当于一个extend类,color已经被弃置,只有value。
public class TemplateData {    //keyword1:订单类型,keyword2:下单金额,keyword3:配送地址,keyword4:取件地址,keyword5备注    private String value;//,,依次排下去//    private String color;//字段颜色(微信官方已废弃,设置没有效果)}
  • #####到这里请求推送的数据就组装好了,接下来,一个很重要的过程,获取一个重要的字段需要获取到:access_token。首先给出access_token的entity。
/** * @ author ezra * @ date 2019/1/28 9:48 */public class AccessToken {	// 获取到的凭证	private String access_token;	// 凭证有效时间,单位:秒	private int expiresIn;	public String getAccess_token() {		return access_token;	}	public void setAccess_token(String access_token) {		this.access_token = access_token;	}	public int getExpiresIn() {		return expiresIn;	}	public void setExpiresIn(int expiresIn) {		this.expiresIn = expiresIn;	}}
  • 然后去可以通过以下方法获取access_token。
/*    * 获取access_token    * appid和appsecret到小程序后台获取,当然也可以让小程序开发人员给你传过来    * */    public String getAccess_token(String appid, String appsecret) {        //获取access_token        String url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential" +                "&appid=" + appid + "&secret=" + appsecret;        String json = restTemplate.getForObject(url, String.class);        AccessToken accessToken = new Gson().fromJson(json, AccessToken.class);        return accessToken.getAccess_token();    }
  • 在这个过程中,会遇到一些坑等待着大家。首先,可以看到一个restTemplate对象,这个对象是需要在spring里面配置的,然后自动注入。只能在web层使用,也就是controller使用。但是对于

转载地址:http://xvcii.baihongyu.com/

你可能感兴趣的文章
【Unity】坑爹的Bug
查看>>
【算法】求数组中某两个数的和为目标值
查看>>
如何高效学习动态规划?
查看>>
动态规划法(六)鸡蛋掉落问题(一)
查看>>
LeetCode 887.鸡蛋掉落(C++)
查看>>
Dijkstra‘s algorithm (C++)
查看>>
奇异值分解(SVD)的原理详解及推导
查看>>
算法数据结构 思维导图学习系列(1)- 数据结构 8种数据结构 数组(Array)链表(Linked List)队列(Queue)栈(Stack)树(Tree)散列表(Hash)堆(Heap)图
查看>>
求LCA最近公共祖先的离线Tarjan算法_C++
查看>>
Leetcode 834. 树中距离之和 C++
查看>>
【机器学习】机器学习系统SysML 阅读表
查看>>
最小费用最大流 修改的dijkstra + Ford-Fulksonff算法
查看>>
最小费用流 Bellman-Ford与Dijkstra 模板
查看>>
实现高性能纠删码引擎 | 纠删码技术详解(下)
查看>>
scala(1)----windows环境下安装scala以及idea开发环境下配置scala
查看>>
zookeeper(3)---zookeeper API的简单使用(增删改查操作)
查看>>
zookeeper(4)---监听器Watcher
查看>>
zookeeper(2)---shell操作
查看>>
mapReduce(3)---入门示例WordCount
查看>>
hbase(3)---shell操作
查看>>