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

Slack API:chat.postMessage接口payload星号字符转义问题咨询

问题原因

你遇到的是两层规则冲突导致的问题:

  1. JSON语法要求字符串中的反斜杠必须转义,直接写\*属于非法JSON格式,所以会返回invalid_json报错
  2. Slack的mrkdwn语法不支持用反斜杠转义星号,所以你传\\*经过JSON解析后变成\*传给Slack,会被直接原样渲染出反斜杠

解决方案

方案1:使用Unicode实体转义普通星号

把需要作为乘号原样显示的星号替换为Unicode实体*,Slack会自动将其解析为普通半角星号,不会识别为加粗格式符。
请求写法如下:

{
    "channel": "CHANNEL_ID",
    "mrkdwn": true,
    "text": "500 * 2 = *1000*"
}

注意你之前请求里的根参数"type": "mrkdwn"是无效参数,全局开启mrkdwn解析的正确参数是"mrkdwn": true。

方案2:使用blocks字段传递内容(兼容性更强)

如果需要更稳定的格式控制,推荐用Slack官方推荐的blocks结构传递富文本:

{
    "channel": "CHANNEL_ID",
    "blocks": [
        {
            "type": "section",
            "text": {
                "type": "mrkdwn",
                "text": "500 * 2 = *1000*"
            }
        }
    ]
}

以上两种方案都可以实现预期效果:500 * 2 = 1000(其中1000为加粗样式)。


内容的提问来源于stack exchange,提问作者Taslim Oseni

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 06:15:03