Slack是否支持Markdown表?

时间:2019-04-23 17:16:17

标签: markdown slack-api

我想使用其postMessage API将Markdown表发送到Slack,但是我在Slack中获得了原始内容,而不是呈现的表。 Slack是否支持Markdown表?是否有其他方法可以在Slack中显示表格数据?我知道Slack不支持HTML。

我尝试过chat.postMessagefiles.upload,也设置了具有固定列长的文本格式,但是看起来有点丑陋,所以我正在寻找一种使它看起来更好的方法。

这是我的HTTP请求代码,内容类型为JSON:

url : https://slack.com/api/chat.postMessage
body :
{
    "channel": "RKAID4I",
    "text": " | Tables  | Are   | Cool  |
|---------- |:-------------:    |------:    |
| col 1 is  | left-aligned  | $1600     |
| col 2 is  | centered  | $12   |
| col 3 is  | right-aligned     | $1    |"

}

我期望表格像格式,但实际输出与我发送的完全一样。是因为我的Markdown消息错误还是Slack根本不支持Markdown表?

2 个答案:

答案 0 :(得分:2)

Slack不支持表的呈现,因此此标记将不起作用。

您有两种选择:

  • 您可以使用字段,大多数情况下这些字段将显示为2列 设备。请参见layout blocks中的fields
  • 您可以将表格转换为图片(在Slack之外)和
    将图像附加到您的消息上。

答案 1 :(得分:2)

实际上,Slack完全不支持消息中的Markdown¹ 。它使用的its own similar-at-a-glance format called mrkdwn与Markdown有一些明显的区别:

  • 在Markdown中,*_都用于强调
  • 在Markdown中,**__均用于粗体
  • mrkdwn中,*用于粗体,而_用于强调
  • Markdown has no syntax for strikethrough(尽管某些实现已将其添加,例如在GFM which uses ~~中),但是mrkdwn使用~来删除行距
  • 链接语法非常不同
  • mrkdwn不支持标题
  • 可能更多

不要期望任意Markdown²在Slack消息中起作用。


¹Slack确实支持帖子中的Markdown,可以使用files.upload API endpoint设置filetypepost来创建。

²请注意,常规Markdown也不支持表格。像删除线一样,一些实现也添加了这些。