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
    评论
如果您下载了本程序,但是该程序存在问题无法运行,那么您可以选择退款或者寻求我们的帮助(如果找我们帮助的话,是需要追加额外费用的)。另外,您不会使用资源的话(这种情况不支持退款),也可以找我们帮助(需要追加额外费用) 爬虫(Web Crawler)是一种自动化程序,用于从互联网上收集信息。其主要功能是访问网页、提取数据并存储,以便后续分析或展示。爬虫通常由搜索引擎、数据挖掘工具、监测系统等应用于网络数据抓取的场景。 爬虫的工作流程包括以下几个关键步骤: URL收集: 爬虫从一个或多个初始URL开始,递归或迭代地发现新的URL,构建一个URL队列。这些URL可以通过链接分析、站点地图、搜索引擎等方式获取。 请求网页: 爬虫使用HTTP或其他协议向目标URL发起请求,获取网页的HTML内容。这通常通过HTTP请求库实现,如Python中的Requests库。 解析内容: 爬虫对获取的HTML进行解析,提取有用的信息。常用的解析工具有正则表达式、XPath、Beautiful Soup等。这些工具帮助爬虫定位和提取目标数据,如文本、图片、链接等。 数据存储: 爬虫将提取的数据存储到数据库、文件或其他存储介质中,以备后续分析或展示。常用的存储形式包括关系型数据库、NoSQL数据库、JSON文件等。 遵守规则: 为避免对网站造成过大负担或触发反爬虫机制,爬虫需要遵守网站的robots.txt协议,限制访问频率和深度,并模拟人类访问行为,如设置User-Agent。 反爬虫应对: 由于爬虫的存在,一些网站采取了反爬虫措施,如验证码、IP封锁等。爬虫工程师需要设计相应的策略来应对这些挑战。 爬虫在各个领域都有广泛的应用,包括搜索引擎索引、数据挖掘、价格监测、新闻聚合等。然而,使用爬虫需要遵守法律和伦理规范,尊重网站的使用政策,并确保对被访问网站的服务器负责。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值