Java微信公众号安全模式消息解密的具体代码分享
发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,这篇文章主要介绍"Java微信公众号安全模式消息解密的具体代码分享",在日常操作中,相信很多人在Java微信公众号安全模式消息解密的具体代码分享问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作
千家信息网最后更新 2025年01月16日Java微信公众号安全模式消息解密的具体代码分享
这篇文章主要介绍"Java微信公众号安全模式消息解密的具体代码分享",在日常操作中,相信很多人在Java微信公众号安全模式消息解密的具体代码分享问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"Java微信公众号安全模式消息解密的具体代码分享"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
本文实例为大家分享了Java微信公众号安全模式消息解密的具体代码,供大家参考,具体内容如下
1.微信公众平台下载解密工具,导入项目中,根据demo解密消息,解密工具官方下载地址:点击打开链接
public static String streamToString(HttpServletRequest request) throws IOException { BufferedReader reader = new BufferedReader(new InputStreamReader(request.getInputStream())); StringBuilder sb = new StringBuilder(); String line; try { while ((line = reader.readLine()) != null) { sb.append(line); } } catch (IOException e) { e.printStackTrace(); } return sb.toString(); } /** * xml转为map集合 * * @param request * @param msg * @return * @throws IOException * @throws DocumentException */ public static MapxmlToMap(HttpServletRequest request, Message msg) throws Exception { SAXReader reader = new SAXReader(); String token = ""; String encodingAesKey = ""; String appId = ""; //获取加密消息xml字符串 /* String format = " "; Document document = reader.read(request.getInputStream()); Element rootElement = document.getRootElement(); Element encrypt = rootElement.element("Encrypt");*/// String fromXML = String.format(format, encrypt.getText()); String fromXML = streamToString(request); //解密消息 WXBizMsgCrypt pc = new WXBizMsgCrypt(token, encodingAesKey, appId); //获得解密消息 String result = pc.decryptMsg(msg.getMsg_signature(), msg.getTimestamp(), msg.getNonce(), fromXML); Map map = new HashMap<>(6); //将解密后的消息转为xml Document doc = DocumentHelper.parseText(result); Element root = doc.getRootElement(); List list = root.elements(); for (Element e : list) { map.put(e.getName(), e.getText()); } return map; }
Message实体类
package com.caisin.weixin.domain; import lombok.Data; @Datapublic class Message { private String signature; private String timestamp; private String nonce; private String openid; private String msg_signature; private String encrypt_type;}
2.将JDK中 jdk\jre\lib\security\policy\unlimited目录中local_policy.jar和US_export_policy.jar两个文件拷贝到 jdk\jre\lib\security目录下
到此,关于"Java微信公众号安全模式消息解密的具体代码分享"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
消息
公众
安全
代码
模式
学习
工具
更多
目录
解密工具
帮助
实用
接下来
两个
内容
地址
字符
字符串
官方
实体
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全 魔力象限
qt常用数据库
工业企业网络安全综合防护方案
怎么将sql中的数据库导出
用户名是接收邮件服务器的id吗
软控股份软件开发
软件开发在线教育平台
数据与网络安全管理制度
现存数据库可视化软件有哪些
串口服务器固定串口号
日本奥运会网络安全吗
第七史诗如何更改服务器
我国网络安全法先后实施顺序
数据库技术应用领域有哪些
数据库和erp是系统吗
网络安全1000题下载
玉树租房网络安全
php下拉列表读数据库
云南农信社软件开发月薪
北京候鸟网络技术
招生简章设计软件开发
塔科夫怎么看当前游戏服务器
怎么将数据导入到另一个数据库
网络技术安全事故
数据库sa登录失败怎么调
简化版网络安全图
网络安全产业的理解
证券交易软件开发工具
数据库检测点
数据库用什么版本的