微信公众号获取事件监听

使用到的工具类 XML (MessageUtil) 实体类(TextMessage

    /*** 验证消息来自于服务器** @param signature* @param timestamp* @param nonce* @param echostr* @param request* @param response*/@RequestMapping(value = "/verificate", method = RequestMethod.GET)public void weChatVerification(@RequestParam String signature, @RequestParam String timestamp, @RequestParam String nonce, @RequestParam String echostr,HttpServletRequest request, HttpServletResponse response) {try {String _signature = WeChatVerificationUtil.dictionarySorting(timestamp, nonce);PrintWriter printWriter = response.getWriter();// 对比signatureif (signature.equals(_signature)) {System.out.println("success");printWriter.print(echostr);} else {System.out.println("fail");}printWriter.close();} catch (IOException e) {e.printStackTrace();}}/*** 接收监听事件* @param req* @param resp* @throws IOException*/@RequestMapping(value = "/verificate", method = RequestMethod.POST)public void postVerification(HttpServletRequest req, HttpServletResponse resp) throws IOException {req.setCharacterEncoding("UTF-8");resp.setCharacterEncoding("UTF-8");PrintWriter out = resp.getWriter();try {Map<String,String> map = MessageUtil.xmlToMap(req);String toUserName = map.get("ToUserName");String fromUserName = map.get("FromUserName");String msgType = map.get("MsgType");String content = map.get("Content");//判断请求是否事件类型 eventString message = "";if(MessageUtil.MESSAGE_EVENT.equals(msgType)){String eventType = map.get("Event");//若是关注事件  subscribeif(MessageUtil.EVENT_SUB.equals(eventType)){String mycontent = MessageUtil.menuText();message = MessageUtil.initText(toUserName, fromUserName, mycontent);}}out.print(message);} catch (Exception e) {e.printStackTrace();out.close();}}

微信公众号获取事件监听相关推荐

  1. 微信公众号页面中监听手机“返回”,并回到公众号里

    window.addEventListener("popstate", function(e) { //回调函数中实现需要的功能 // alert("我监听到了浏览器的返 ...

  2. tp5微信公众号获取用户openid_tp5+微信公众号获取用户基本信息

    获取用户基本信息(UnionID机制) 获取用户基本信息(UnionID机制) 在关注者与公众号产生消息交互后,公众号可获得关注者的OpenID(加密后的微信号,每个用户对每个公众号的OpenID是唯 ...

  3. vue 微信公众号获取定位经纬度 腾讯地图逆地址解析为具体地址

    最近做项目需要用到 微信公众号获取定位,并将定位转换为具体地址的需求,找了挺多,最后整理下,分享给大家~ 我这里使用的是腾讯地图,也可以使用其他的如百度.高德等. 思路是,先使用微信开放文档的获取定位 ...

  4. 微信公众号获取AccessToken

    微信公众号获取AccessToken 微信公众号appid和appSecret及配置相关的ip白名单 用到的pom.xml文件 <!-- fastjson--><dependency ...

  5. springboot+h5页面+微信公众号获取微信用户信息

    springboot项目,h5页面通过微信公众号获取微信用户信息 最近本人有一个项目需求,微信公众号里点击一个菜单进入一个商城购物系统. 对于在微信公众号还是小白的我来说难度有点大,但是做完后发现也就 ...

  6. 微信公众号获取jsapi_ticket(多类型)

    一.jsapi_ticket是什么? jsapi_ticket是公众号用于调用微信JS接口的临时票据.正常情况下,jsapi_ticket的有效期为7200秒,通过access_token来获取.由于 ...

  7. 微信公众号获取用户头像的踩坑经历

    微信公众号获取头像有两种方式 1.用户无感知的,静默授权 snsapi_base 2.需要用户需要点击确认的 snsapi_userinfo 官方文档 我用的是第二种 开发步骤 1.引导用户进入授权页 ...

  8. php微信获取openid_微信公众号获取openid(php实例)

    微信公众号获取openid 公众号获取openid的方法跟小程序获取openid其实是一样的,只是code获取的方式不一样 小程序获取code: 用户授权登录时调用wx.login即可获取到code ...

  9. java根据手机号获取微信信息_Java实现的微信公众号获取微信用户信息示例

    本文实例讲述了Java实现的微信公众号获取微信用户信息.分享给大家供大家参考,具体如下: 注: 这里获取用户信息方式和网页授权获取用户信息方式不同.两个access_token不同,返回的结果也不同. ...

最新文章

  1. html自动获取用户位置,HTML5 - 使用Geolocation(地理定位)获取用户的位置
  2. JavaScript面向对象(一)——JS OOP基础与JS 中This指向详解
  3. 一定要用虚拟化服务器吗?
  4. nvidia-smi命令显示NVIDIA-SMI has failed because it couldn‘t communicate with the NVIDIA driver
  5. 文件上传之Springmvc方式上传代码
  6. 你需要了解操作系统发展历程
  7. 49自动化测试中最常见的硒异常
  8. 哥斯拉Godzilla Shell管理工具使用,马分析,特征分析(4K屏不好用,Webshell)
  9. 漫画:什么是微服务?
  10. 将PHP作为Shell脚本语言使用
  11. 09.显式的实现接口的方法
  12. excel切片器显示错误_Office 2016中报表用户的新Excel切片器功能
  13. reids笔记4 集群
  14. 数论基础——欧拉函数(一)(模板)
  15. 【论文翻译】Self-Guided and Cross-Guided Learning for Few-Shot Segmentation
  16. Windows系统win10系统磁力种子文件下载软件推荐
  17. 读jquery 权威指南[2]-事件
  18. 将您重定向的次数过多什么意思_【linux二三轶事】重定向是啥?文件描述符是啥?...
  19. Python自动化第二周之数据模块
  20. 用金字塔原则思考与表达

热门文章

  1. 知道一个IP地址,如何计算出它的子网掩码啊?
  2. 朱有鹏嵌入式免费课程
  3. 智慧指间丨数字孪生让水利更智慧
  4. 信阳农林学院计算机应用好就业吗,信阳农林学院怎么样好就业吗?属于几本?王牌专业是什么...
  5. 面试_关于IT 行业的自我介绍
  6. 【爬虫实践】用递归获取网站的所有内链和外链
  7. 如何利用织梦的内链功能,自动给文章加内链。
  8. java手机号归属地查询
  9. STM32F0官网固件库
  10. python获取时间字符串前后5分钟