企业微信开发(1)——接入企业微信

简介: 本文目录1. 准备工作2. 创建应用3. 验证URL4. 验证

1. 准备工作

首先得注册个企业微信


其次下载一个加解密的包,免得自己封装

https://work.weixin.qq.com/api/doc#10128/java%E5%BA%93


具体使用方法:下载解压后,将com文件夹拷贝到src下,然后将lib下的jar包拷贝到咱们web工程的WEB-INF/lib下就行了。


2. 创建应用

登录企业微信,点击【企业应用】-【创建应用】,输入应用logo、应用名称,选择部门/成员后点击【创建应用】。


#设置接收微信消息的开发者服务器


点击刚刚创建的应用,点击【接收消息】-【设置API接收】,在URL处填写我方的地址,例如:


http://xx.xx.xx.xx:8080/XXproject/XXServlet,表示IP地址xx.xx.xx.xx的8080端口上的XXproject项目的XXSerlvet负责接收微信发送的消息。


然后点击Token和EncodingAESKey后的随机获取,将这两个参数记录下来。


然后消息类型都选上,点击【保存】,此时提示"回调URL校验失败",所以需要在刚刚自己的Servlet上处理微信发过来的消息并按规则进行回复,这样微信才认可。


3. 验证URL

首先封装一个常量类,保存相关参数,因为是企业微信Enterprise Wechat,此处简写为Wxep,此处为了安全就不具体写参数了


package com.easy.wxep.util;

/**

 * 企业微信常量

 * @author easypanda

 * @since 2018-04-21

 */

public class WxepConstants {

 //API接收消息中的Token

 public final static String Token="";

 //API接收消息中的EncodingAESKey

 public final static String EncodingAESKey="";

 //企业ID

 public final static String CorpId="";

 //应用凭证密钥

 public final static String CorpSecret="";

}



第二,在Servlet中对微信发过来的消息处理,注意加解密使用之前导入的jar包封装的接口即可。此处我用的是SpringMVC接收消息,在Servlet中代码一样即可。


/**

 * 接收企业微信api消息

 * @throws IOException

 */

@RequestMapping("/public_wxapi_message")

public void public_wxapi_message(HttpServletRequest request, HttpServletResponse response) throws IOException {

 //获取微信服务器发送过来的四个参数

 //微信加密签名  

       String msg_signature = request.getParameter("msg_signature");  

       //时间戳  

       String timestamp = request.getParameter("timestamp");  

       //随机数  

       String nonce = request.getParameter("nonce");  

       //随机字符串  

       String echostr = request.getParameter("echostr");  

 

 

       //验证输入后返回消息给微信服务器

       PrintWriter out = response.getWriter();  

       // 通过检验msg_signature对请求进行校验,若校验成功则原样返回echostr,表示接入成功,否则接入失败  

       String result = null;  

       try {

           WXBizMsgCrypt wxcpt = new WXBizMsgCrypt(WxepConstants.Token, WxepConstants.EncodingAESKey, WxepConstants.CorpId);  

           result = wxcpt.VerifyURL(msg_signature, timestamp, nonce, echostr);  

       } catch (Exception e) {  

           e.printStackTrace();  

       }  

       if (result == null) {  

           result = WxepConstants.Token;  

       }  

       out.print(result);  

       out.close();  

       out = null;  

}


此时再点击【保存】则Eclipse异常信息:Illegal key size


此时可参考企业微信API提出的方案:


异常java.security.InvalidKeyException:illegal Key Size的解决方案:在官方网站下载JCE无限制权限策略文件(请到官网下载对应的版本, 例如JDK7的下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html ):下载后解压,可以看到local_policy.jar和US_export_policy.jar以及readme.txt。

如果安装了JRE,将两个jar文件放到%JRE_HOME% \lib\security目录下覆盖原来的文件,如果安装了JDK,将两个jar文件放到%JDK_HOME%\jre\lib\security目录下覆盖原来文件。


此处我使用的JDK8对应下载地址http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html


4. 验证

重启Tomcat后再次点击【保存】,提示"保存成功",表示微信服务器已认可我们配置的服务器。

相关文章
|
5月前
|
机器人 数据安全/隐私保护 Python
企业微信自动回复软件,企业微信自动回复机器人,python框架分享
企业微信机器人包含完整的消息处理流程,支持文本消息自动回复、事件处理、消息加密解密等功能
|
3月前
|
消息中间件 人工智能 Java
抖音微信爆款小游戏大全:免费休闲/竞技/益智/PHP+Java全筏开源开发
本文基于2025年最新行业数据,深入解析抖音/微信爆款小游戏的开发逻辑,重点讲解PHP+Java双引擎架构实战,涵盖技术选型、架构设计、性能优化与开源生态,提供完整开源工具链,助力开发者从理论到落地打造高留存、高并发的小游戏产品。
|
4月前
|
小程序 JavaScript API
uni-halo + 微信小程序开发实录:我的第一个作品诞生记
这篇文章介绍了使用uni-halo框架进行微信小程序开发的过程,包括选择该框架的原因、开发目标以及项目配置和部署的步骤。
196 0
uni-halo + 微信小程序开发实录:我的第一个作品诞生记
|
5月前
|
API 数据安全/隐私保护 开发者
企业微信自动加好友软件,导入手机号批量添加微信好友,python版本源码分享
代码展示了企业微信官方API的合规使用方式,包括获取access_token、查询部门列表和创建用户等功能
|
7月前
|
小程序 前端开发 Android开发
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
1506 29
小程序微信分享功能如何开发?开放平台已绑定仍不能使用的问题?-优雅草卓伊凡
企业微信批量加好友脚本,企业微信自动加手机号好友软件,自动同意群发消息自动回复
这是一款为企业微信设计的自动化营销工具,能够一键批量加好友并自动回复消息。通过模拟操作实现自动化流程,提升网络营销效率。
|
6月前
|
监控 数据可视化 数据处理
微信养号脚本,全自动插件,AUTOJS开发版
这是一套自动化微信养号工具,包含主脚本`wechat_auto.js`与配置文件`config.json`。主脚本实现自动浏览朋友圈、随机阅读订阅号文章及搜索指定公众号三大功能,支持自定义滚动次数、阅读时长等参数。代码通过随机化操作间隔模拟真实用户行为,具备完善的错误处理和日志记录功能。配套UI模块提供可视化操作界面,可实时监控任务状态与运行日志,便于调整参数设置。控制器部分扩展了批量数据处理能力,如学生信息的增删改查操作,适用于多场景应用。下载地址:https://www.pan38.com/share.php?code=n6cPZ 提取码:8888(仅供学习参考)。
|
8月前
|
小程序 Java 关系型数据库
weixin163基于微信小程序的校园二手交易平台系统设计与开发ssm(文档+源码)_kaic
本文介绍了一款基于微信小程序的校园二手物品交易平台的开发与实现。该平台采用Java语言开发服务端,使用MySQL数据库进行数据存储,前端以微信小程序为载体,支持管理员和学生两种角色操作。管理员可管理用户、商品分类及信息、交易记录等,而学生则能注册登录、发布购买商品、参与交流论坛等。系统设计注重交互性和安全性,通过SSM框架优化开发流程,确保高效稳定运行,满足用户便捷交易的需求,推动校园资源共享与循环利用。
|
10月前
|
自然语言处理 搜索推荐 小程序
微信公众号接口:解锁公众号开发的无限可能
微信公众号接口是微信官方提供的API,支持开发者通过编程与公众号交互,实现自动回复、消息管理、用户管理和数据分析等功能。本文深入探讨接口的定义、类型、优势及应用场景,如智能客服、内容分发、电商闭环等,并介绍开发流程和工具,帮助运营者提升用户体验和效率。未来,随着微信生态的发展,公众号接口将带来更多机遇,如小程序融合、AI应用等。
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
3135 7

热门文章

最新文章