Java架构学习(五十二)使用框架开发微信&微信框架介绍&整合微信开发框架WxJava&使用微信返回消息模板接口&使用WxJava框架发送模板消息&http协议参数转义知识

一、微信框架介绍

1、access_token是公众号的全局唯一调用接口的凭证,它两个小时更新一次。

获取access_token方法:
https请求方式: GET
https://api.weixin.qq.com/cgi-bin/token? 
grant_type=client_credential&appid=APPID&secret=APPSECRET

本项目使用github上的开源微信项目:

https://github.com/Wechat-Group/WxJava

二、整合微信开发框架WxJava

在这里插入图片描述

将demo下面的类(除了controller包)全部复制到我们自己的项目里面,引入
maven jar包,并且还有把demo项目中的application中也要设置成一样的。

验证是否将框架整合完成,就是将demo下面的那个验证放入项目中去配置一下看能不能配置成功。
如果配置成功了,说明框架整合完成。

三、微信返回模板消息接口

这个模版消息接口可以参考微信的官方文档 ,这里面解释的很详细。

在这里插入图片描述

测试微信模板消息接口推送,使用postman推送。
发送消息接口使用POST方式
http请求方式: POST

https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN

模板消息 ,使用json格式发送
      {
           "touser":"OPENID",
           "template_id":"ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY",
           "url":"http://weixin.qq.com/download",  
           "miniprogram":{
             "appid":"xiaochengxuappid12345",
             "pagepath":"index?foo=bar"
           },          
           "data":{
                   "first": {
                       "value":"恭喜你购买成功!",
                       "color":"#173177"
                   },
                   "keyword1":{
                       "value":"巧克力",
                       "color":"#173177"
                   },
                   "keyword2": {
                       "value":"39.8元",
                       "color":"#173177"
                   },
                   "keyword3": {
                       "value":"2014年9月22日",
                       "color":"#173177"
                   },
                   "remark":{
                       "value":"欢迎再次购买!",
                       "color":"#173177"
                   }
           }
       }

四、使用wxJava框架来发送消息模版

发送的json模板数据:
--
注意了:这个模板跟上面微信的那个模板不一样,不一样的地方名字、和参数,data是list类型的。
{
  "toUser": "o8c0W1rRGfQBoP7i9vfeWg_kxMok",
  "templateId": "16FCCw39w8xuI26M5xTU60nstxh5NQN-rQlIgVZX_DQ",
  "url": "http://www.itmayiedu.com",
  "data": [
    {
      "name": "first",
      "value": "2019年1月16日",
      "color": "#173177"
    },
    {
      "name": "money",
      "value": "1000",
      "color": "#173177"
    },
    {
      "name": "orderNo",
      "value": "1676767677677",
      "color": "#173177"
    }
  ]
}
本地调用方法:
   /**
     * 发送模版消息请求  发送消息模版
     * @throws WxErrorException 
     */
    @RequestMapping("/sendTemplete")
    public String sendTemplete(@RequestBody WxMpTemplateMessage wxMpTemplateMessage) throws WxErrorException {
    	WxMpTemplateMsgService wxMpTemplateMsgService = wxService.getTemplateMsgService();
    	log.info("####微信消息模版正在推送####");
    	return wxMpTemplateMsgService.sendTemplateMsg(wxMpTemplateMessage);
    }
调用:
http://127.0.0.1:81/wechat/portal/sendTemplete

五、Http协议参数转义知识

1、http协议转义:http协议对于特殊字符要进行转义,如:+ - 号等特殊字符,
需要转义才能去访问,否则会变成空格。

2、为什么要回调的时候转义?
答:因为重定向到浏览器的时候自己进行重定向。转义主要是防止特殊字符变成空格
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值