链接的松弛降价无法解决

问题描述 投票:108回答:7

我究竟做错了什么?到目前为止,我的Slack应用程序中没有示例Markdown链接。

我在Slack应用程序的聊天中粘贴了以下示例。我从slack markdown syntax得到了这个例子,它仍然把它当作Slack App中的文字文本:

[like this](http://someurl)

所以我最终看到了而不仅仅是“像这样”作为Slack聊天中的链接。

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

markdown slack-api slack
7个回答
172
投票

Slack目前不支持超链接;见this link说:

注意:无法在Slack消息中超链接单词。


125
投票

Slack使用他们自己的降价风格: Slack Markdown Links以下列方式工作:<http://someurl|like this>

注意:您只能通过Slack API执行此操作,而不仅仅是通过Slack客户端发送的简单消息。

Message Builder Example enter image description here More Info in the Docs


28
投票

Slack尚未支持直接消息,您只能使用Slack API执行此操作。但你可以赞成the feature request I have submitted here


4
投票

作为Slack Messages的替代品(在Wilhemanswer中有介绍),您可以通过API创建Slack Posts并使用至少一些Markdown。这些都创建<h2><a href="https://someurl">like this</a></h2>

curl -F filetype=post -F content="# [like this](https://someurl)" -F channels=C1.....7L -F token=xoxp-... https://slack.com/api/files.upload

或交换content="..."[email protected]

curl -F filetype=post -F [email protected] -F channels=C1.....7L -F token=xoxp-... https://slack.com/api/files.upload

这是使用files.upload。我认为尝试发布自己的最简单方法是使用a legacy token。从频道的URI中获取频道ID。


4
投票

Reubenanswer可以工作,但它看起来像一个无标题的文件上传,如下所示:untitled file posted to Slack。但是,通过稍加修改,您可以轻松发布带有工作超链接的自然外观消息,例如您在此处看到:natural looking Slack post with hyperlink使用chat.postMessage Slack api方法而不是“files.upload”并采用Slack自己的message formatting而不是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用于频道是有用的。


0
投票

超级晚会,但我最近发现您可以使用URL缩短器来创建https链接,然后您可以使用降价链接进行引用。


0
投票

我编写了这段代码,将文本正文中的markdown链接转换为slack期望的链接格式:

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

从我可以告诉松弛不支持文本内的图像链接。

© www.soinside.com 2019 - 2024. All rights reserved.