如何正确格式化带多个附件的Slack消息避免出现(edited)标记
问题原因
你当前直接在消息文本中插入文件永久链接的方式,会被Slack判定为发送普通文本后补充编辑内容,因此会出现多余的(edited)标记,也无法匹配原生附件的展示样式。
正确实现方案
- 上传文件到Slack时,保存接口返回的每个文件的
id字段(无需使用permalink字段) - 调用
chat.postMessage接口发送消息时,不要在text参数中插入任何文件链接,直接在请求体中新增files参数,传入所有需要附带的文件ID数组即可,示例请求格式如下:
{ "channel": "你的频道ID", "text": "消息正文内容", "files": ["文件1ID", "文件2ID", "..."] }
- 该方式调用后返回的消息和Slack客户端手动上传发送的多附件消息完全一致,不会出现多余标记,附件展示样式也符合预期。
补充说明
如果使用旧版Slack API,也可以在调用files.upload上传文件时直接指定channels参数,同步完成文件上传和消息发送,也能达到相同效果。请确保你的应用已经申请了chat:write和files:read权限,避免接口调用失败。
内容的提问来源于stack exchange,提问作者Philipp Grigoryev
相关产品推荐
相关产品推荐

