企业微信回调配置
2022-10-24 15:45:48
287
{{single.collect_count}}

1、配置

配置回调服务,需要有三个配置项,分别是:URL, Token, EncodingAESKey。
URL :需要以https:// 开头,因为我们是http的,所以需要去nginx里面配置proxy_pass代理转发,例如:
在这里插入图片描述
(注意路径)

Token用于计算签名,EncodingAESKey用于消息内容加密,都是在企业微信后台配置的,可以填写在配置文件里,到时候要用就直接获取配置文件里的内容。后台的配置如下:
在这里插入图片描述

(注意获取完Token和EncodingAESKey需要点击确定保存)

配置白名单:
在这里插入图片描述

2、加解密库下载与返回码

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3、数据回调与指令回调(注意两个回调都需要支持GET和POST请求)
企业微信后台回调地址的校验过程:
1、先调用get请求验证url是否有效;(注意:若通过验证需返回明文)
2、再调用post请求发送回调消息,例如:每十分钟推送一次的suite_ticket 就是在指令post回调中接收的。(注意:若回调成功需返回"success")

FAQ:
1、回调url填写的是http
在这里插入图片描述

2、Token、EncodingAESKey 配置有误
会报:签名验证错误、sha加密生成签名失败、SymmetricKey非法等一些异常;
如下:
在这里插入图片描述
3、postman测试时:若随机字符串"echostr"参数中带有”+”号,因为编码原因,有时候”+”会变成空格,导致异常,测试需注意;

4、illegal Key Size异常导致解密失败
异常java.security.InvalidKeyException:illegal Key Size的解决方案:在官方网站下载JCE无限制权限策略文件(请到官网下载对应的版本, 例如JDK7的下载地址:https://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目录下覆盖原来文件。
(jdk1.8的jce包)

在这里插入图片描述

回帖
全部回帖({{commentCount}})
{{item.user.nickname}} {{item.user.group_title}} {{item.friend_time}}
{{item.content}}
{{item.comment_content_show ? '取消' : '回复'}} 删除
回帖
{{reply.user.nickname}} {{reply.user.group_title}} {{reply.friend_time}}
{{reply.content}}
{{reply.comment_content_show ? '取消' : '回复'}} 删除
回帖
收起
没有更多啦~
{{commentLoading ? '加载中...' : '查看更多评论'}}