腾讯IM发送消息20001
公司项目用到了腾讯的即时通讯IM和实时音视频TRTC,但是在测试过程中发现发送消息的时候会报20001的异常,说是请求包非法,只有重新卸载才可以,但是问题的解决,总不能老是卸载,于是准备解决该问题。
1.首先请求包非法,我们首先想到的是不是接口的请求体错误,但是检查发现,发送消息的方法是IM的接口,sendMessage(),后台接口只调用了getSig(),即获取腾讯sig,只好放弃;
2. 接下来我就想到了是不是跟缓存有关系,然后看文档,版本4.8 没有禁止本地缓存的api,但是版本4.6有禁止本地缓存的api,然而我们用的是最新的,所以也不行。
3. 后来看我们发送的消息,我们发送的是自定义消息,就想是不是自定义消息出错呢,后来经过多次提工单,多次打电话沟通,发现可能是IM发送自定义消息,加上测试账户频繁清零,有可能导致IM在发送消息的时候,找不到thytid(我也忘记了,IM说的一个标识),建议发送文本消息更加稳定,经过尝试和多次测试,改为发送文本消息的时候,20001问题不会复发,完美解决。
4.腾讯客服还说了,建议在申请IM的时候,如果有TRTC,最后两者的appid要一致,这样也可以避免很多坑。