You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python调用Slack Incoming Webhook时fields的value内容被截断如何解决

问题原因

Slack 旧版 attachments 结构中的 fields.value 存在内置字符限制,单字段内容过长时会被自动截断。

解决方案

方案1:调整现有attachments结构,将长内容移入text字段

attachments 下的 text 字段容量上限远高于fields的value字段,可承载更长内容,修改后的代码示例如下:

slack_data = {
    "username": "Test",
    "icon_emoji": ":robot_face:",
    "attachments": [
        {
            "pretext": "Test",
            "title": self.__title,
            "text": message, # 长内容直接放在text字段
        }
    ]
}

headers = {'Content-Type': "application/json"}
response = requests.post(SLACK_CHANNEL_URL, json=slack_data, headers=headers)

方案2:改用Slack官方推荐的Block Kit结构

如果内容超过3000字符,可拆分为多个section块拼接,不会出现自动截断问题,代码示例如下:

slack_data = {
    "username": "Test",
    "icon_emoji": ":robot_face:",
    "blocks": [
        {
            "type": "section",
            "text": {
                "type": "mrkdwn",
                "text": f"*{self.__title}*\n{message}" # 支持markdown格式,单块容量上限3000字符
            }
        }
    ]
}

headers = {'Content-Type': "application/json"}
response = requests.post(SLACK_CHANNEL_URL, json=slack_data, headers=headers)

如果内容超过3000字符,直接把长文本按段落拆分,追加多个section类型的块到blocks列表中即可。

内容的提问来源于stack exchange,提问作者Ayush Ujjwal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 07:36:04