首页 > 其他分享 >超长文本消息回写企业微信端后台应用遭到截断

超长文本消息回写企业微信端后台应用遭到截断

时间:2023-06-10 22:56:49浏览次数:44  
标签:回写 微信端 2048 content 截断 超长 sb

当向企业微信的自建应用推送消息时:消息内容最长不超过2048个字节,超过将截断。为此通过简单的拆分字符回写解决,解决方式如下

关键代码:根据非单词字符拆分字符串 String[] parts = content.split("(?<=\\W)");

private void writeResponse(Response response) {
    String content = response.getData().trim();
    if (StringUtils.hasText(content)) {
        //回写企业微信端。若接口返回的内容字节长度超过2048时,将会截断返回
        if (content.getBytes(StandardCharsets.UTF_8).length <= 2048) {
            wxWorkService.sendResponse(content);
        } else {
            StringBuilder sb = new StringBuilder();
            //根据非单词字符拆分字符串
            String[] parts = content.split("(?<=\\W)");
            for (String part : parts) {
                if ((sb + part).getBytes(StandardCharsets.UTF_8).length > 2048) {
                    //达到最大字节限制,先回写
                    wxWorkService.sendResponse(sb.toString());
                    //重新开始下一个部分
                    sb = new StringBuilder();
                }
                sb.append(part);
            }

            //回写最后一个部分的内容
            wxWorkService.sendResponse(sb.toString());
        }
    }
}

 

标签:回写,微信端,2048,content,截断,超长,sb
From: https://www.cnblogs.com/52-IT-y/p/17472140.html

相关文章

  • Smartbi回写填报
    Smartbi回写填报一、分组列表式报表补录1.1、需求说明分组列表式报表补录回写是指分组报表以列表方式列出报表数据,并对报表数据(可以是多条记录操作)进行修改、增删后回写补录到报表对应的数据表中。满足需求:(1)可以修改多条数据回写不同的记录到回写表中;(2)可以插入/删除行来实现......
  • 用友清除出纳和其他单据锁定及处理出纳制单提示:选中的日记账中包含了已制单但没有成功
    --清除出纳单据锁定select*fromCN_LockAcctBookdeleteCN_LockAcctBook--系统管理清除单据锁定表select*fromLockVouchdeleteLockVouch处理出纳日记账凭证不成功提示: --查询出纳制单不成功记录项select*fromCN_AcctBookwhereacctdate='2023-05-31'andvouc......
  • rsa加解密的内容超长的问题解决
    一.现象:     有一段老代码用来加密的,但是在使用keyA的时候,抛出了异常:javax.crypto.IllegalBlockSizeException:Datamustnotbelongerthan117bytes。老代码已经做了分段的加密,应该是已经考虑了加密长度的问题才对。换了另一个线上代码中的keyB,正常加......
  • LangChain入门(三)-对超长文本进行总结
    GitHub-liaokongVFX/LangChain-Chinese-Getting-Started-Guide:LangChain的中文入门教程LangChain的中文入门教程.ContributetoliaokongVFX/LangChain-Chinese-Getting-Started-GuidedevelopmentbycreatinganaccountonGitHub.https://github.com/liaokongVFX/LangCh......
  • css实现多行文字超长,显示..., 添加展开,收起
    效果如下:展开的样式:Alevel小程序,页面路径:pages/contestDetail/contestDetail实现思路:展开,收起分别写两套样式收起:展开:xml代码:<viewclass="text-expansion"wx:if="{{!showDes}}"><viewclass="text-expansion__text">......
  • 记录--超长溢出头部省略打点,坑这么大,技巧这么多?
    这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助在业务中,有这么一种场景,表格下的某一列ID值,文本超长了,正常而言会是这样: 通常,这种情况都需要超长省略溢出打点,那么,就会变成这样: 但是,这种展示有个缺点,3个ID看上去就完全一致了,因此,PM希望能够实现头部省略......
  • 首搭骁龙最强芯片,80小时超长续航,出门问问发布旗舰新品TicWatch Pro 5
    出门问问海外推出备受期待的旗舰新品TicWatchPro5,迄今为止最强大的TicWatch。TicWatchPro5是第一款基于Snapdragon®W5+Gen1可穿戴平台的智能手表,搭载了谷歌™最新版本WearOS系统。作为业内领先的AI公司和TicWatch智能手表的制造商,出门问问于今天(旧金山时间5月24日上午9点/北......
  • 解决 UltraISO 截断超长文件名的问题
    UltraISO的Joliet选项默认未被勾选勾选:必要时添加Joliet文件卷除去:使用回收站勾选:必要时调整ISO的介质类型  ......
  • 超长溢出头部省略打点,坑这么大,技巧这么多?
    在业务中,有这么一种场景,表格下的某一列ID值,文本超长了,正常而言会是这样:通常,这种情况都需要超长省略溢出打点,那么,就会变成这样:但是,这种展示有个缺点,3个ID看上去就完全一致了,因此,PM希望能够实现头部省略打点,尾部完全展示,那么,最终希望的效果就会是这样的:OK,很有意思的一个......
  • 读取Excel表格数据做接口自动化测试并回写执行结果(待完善更新)
     待测试接口:代码脚本:控制台日志:执行结果:后续待完善:Excel表格增加请求方式(常用方式POST/GET/PUT)列;根据Excel表格内容(请求头Header、请求参数Parameter、请求体Body)发起请求;根据Excel表格内容(期望响应码、期望响应内容)与实际响应内容校验;考虑更多应用场景,增加判断......