Closed
Description
简要描述
我今天从版本4.2.0升级到4.3.0的时候.改造会话存档的时候. 发现一个问题.
模块版本情况
- WxJava 模块名: weixin-java-cp
- WxJava 版本号: 4.3.0
详细描述
我的系统是用agentId 来区分应用的. 我给会话存档自定义了一个agentId来使用.
比如 agentId=100000 自建应用
agentId=900000 会话存档
agentId=900001 微信客服
我看了下源码. 在 WxCpMsgAuditServiceImpl ::decryptChatData() 方法中
String priKey = this.cpService.getWxCpConfigStorage().getAesKey();
可以看出会话存档的prikey是存储在aesKey里面的.
但是根据https://developer.work.weixin.qq.com/document/path/94670 会话存档是可以配置回调设置的. (自建应用.微信客服都可以配置回调事件)
如果按照应用隔离的话. 是不是2个值都使用了aesKey字段呢. 是否考虑新增一个字段呢?
虽然我都可以使用100000来接收回调请求(这样只使用了自建应用100000的aeskey). 使用900000来处理逻辑变向解决这个问题. 但是这样所有的回调都配置到自建应用上面去了. 感觉不是很好, 我有考虑每个agent应用 都有自己对应的 WxCpMessageRouter类. 物理隔离下.
同时我还发现微信客服的回调信息. 有一个token字段. 在WxCpXmlMessage 没有对应字段的.
Metadata
Metadata
Assignees
Labels
No labels