我做错了什么?到目前为止,在我的Slack应用程序中,还没有一个降价链接的例子。

我在我的Slack应用程序的聊天中粘贴了下面的例子。我从Slack markdown语法中得到了这个例子,它仍然将其视为Slack应用程序中的文字文本:

[like this](http://someurl)

所以我最终在Slack聊天中看到的不是“像这样”的链接。

或许上面的说法是错误的,在这种情况下,我的问题是如何在Slack中显式地创建链接?我想要一些文本,我指定可以点击到特定的URL(超链接)。


当前回答

我写了这段代码来转换markdown链接在一个文本体到链接格式slack期望:

// Pretty hacky, convert [sup](http://example.com) to <http://example.com|sup>
const reformatLinks = /\[(.*?)\]\((.*?)\)/g
const slackBody = body.replace(reformatLinks, (_m, text, url) => `<${url}|${text}>`)

据我所知,slack不支持文本内的图像链接。

其他回答

如果你正在使用Slack -bot或其他使用Slack API的东西,你就可以在你的消息中使用mrkdwn语法。

<http://www.example.com|This message is a link>

参考:https://api.slack.com/reference/surfaces/formatting

我的标记设置是禁用的,一旦我启用了它(首选项->高级->格式消息与标记),它就工作了。

Slack使用了他们自己的减价方式: Slack Markdown链接的工作方式如下:<http://someurl|like this>

注意:你只能通过Slack API做到这一点,而不是通过Slack客户端发送简单的消息。

消息生成器示例 更多信息在文档中

超级晚的派对,但我最近发现,你可以使用URL缩短器创建一个https链接,然后你可以引用使用markdown链接。

鲁本的答案是可行的,但它看起来像一个无标题文件上传,如图所示:无标题文件发布到Slack。然而,只要稍加修改,你就可以轻松地发布一个带有工作超链接的自然外观的消息,就像你在这里看到的:使用聊天功能发布带有超链接的自然外观的Slack帖子。postMessage Slack api方法,而不是“文件”。并采用Slack自己的邮件格式,而不是Markdown。可以这样做:

curl -F text="*<https://someurl|like this>*" -F as_user=true -F link_names=true -F channel=C1.....7L -F token=xoxp-... https://slack.com/api/chat.postMessage

在本例中没有使用link_names=true参数,但是可以@mention用户和#refer通道。