企业微信开发(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后再次点击【保存】,提示"保存成功",表示微信服务器已认可我们配置的服务器。

相关文章
|
1月前
|
JSON 小程序 JavaScript
uni-app开发微信小程序的报错[渲染层错误]排查及解决
uni-app开发微信小程序的报错[渲染层错误]排查及解决
485 7
|
1月前
|
小程序 JavaScript 前端开发
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
uni-app开发微信小程序:四大解决方案,轻松应对主包与vendor.js过大打包难题
540 1
|
1月前
|
缓存 小程序 索引
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
uni-app开发微信小程序时vant组件van-tabs的使用陷阱及解决方案
192 1
|
1月前
|
小程序 JavaScript API
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
这篇文章介绍了如何在uni-app和微信小程序中实现将图片保存到用户手机相册的功能。
547 0
微信小程序开发之:保存图片到手机,使用uni-app 开发小程序;还有微信原生保存图片到手机
|
27天前
|
存储 小程序 安全
微信的开发管理都需要配置什么?
【10月更文挑战第17天】微信的开发管理都需要配置什么?
30 0
|
1月前
|
JavaScript 小程序 开发者
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
uni-app开发实战:利用Vue混入(mixin)实现微信小程序全局分享功能,一键发送给朋友、分享到朋友圈、复制链接
322 0
|
1月前
|
小程序
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
uni-app开发微信小程序使用onPullDownRefresh(下拉刷新)总结
489 0
|
1月前
|
小程序 前端开发 测试技术
微信小程序的开发完整流程是什么?
微信小程序的开发完整流程是什么?
111 7
ly~
|
2月前
|
存储 供应链 小程序
除了微信小程序,PHP 还可以用于开发哪些类型的小程序?
除了微信小程序,PHP 还可用于开发多种类型的小程序,包括支付宝小程序、百度智能小程序、抖音小程序、企业内部小程序及行业特定小程序。在电商、生活服务、资讯、工具、娱乐、营销等领域,PHP 能有效管理商品信息、订单处理、支付接口、内容抓取、复杂计算、游戏数据、活动规则等多种业务。同时,在企业内部,PHP 可提升工作效率,实现审批流程、文件共享、生产计划等功能;在医疗和教育等行业,PHP 能管理患者信息、在线问诊、课程资源、成绩查询等重要数据。
ly~
78 6
|
1月前
|
小程序 前端开发 数据安全/隐私保护
微信小程序全栈开发中的身份认证与授权机制
【10月更文挑战第3天】随着移动互联网的发展,微信小程序凭借便捷的用户体验和强大的社交传播能力,成为企业拓展业务的新渠道。本文探讨了小程序全栈开发中的身份认证与授权机制,包括手机号码验证、微信登录、第三方登录及角色权限控制等方法,并强调了安全性、用户体验和合规性的重要性,帮助开发者更好地理解和应用这一关键技术。
63 5