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

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

[like this](http://someurl)

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

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


当前回答

鲁本的答案是可行的,但它看起来像一个无标题文件上传,如图所示:无标题文件发布到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通道。

其他回答

Slack还不支持这一功能,你只能使用Slack API来实现。但是你可以投票支持我在这里提交的功能请求。

作为Slack Messages的替代品(Wilhem的回答中提到了),你可以通过API创建Slack Posts,并至少使用一些Markdown。这些都创建了<h2><a href="https://someurl">,如下所示</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="…" for file=@post.md

curl -F filetype=post -F file=@post.md -F channels=C1.....7L -F token=xoxp-... https://slack.com/api/files.upload

这是使用files.upload。我认为尝试以自己的身份发布的最简单的方法是使用遗留令牌。从通道的URI获取通道ID。

Slack目前不支持超链接;请看下面的链接:

注意:不能在Slack消息中超链接单词。


更新:

Slack终于在他们的聊天界面中添加了这个功能(来源):

选择文本,然后单击格式工具栏中的链接图标 选择文本,然后按Cmd+Shift+U (Mac)或Ctrl+Shift+U (Windows/Linux)。 复制您想要共享的链接,并将其粘贴到链接下的空字段中,然后单击保存。

这里其他答案中的标记(Markdown, <a|b>,等等)都不起作用了。

如果你手动编写,对我来说,文档中有一些比键盘快捷键更好的东西(因为这个快捷键与Linux上的全局默认值冲突,处理起来很痛苦)。

复制您的URL到剪贴板,然后选择您想要作为锚文本的文本,并粘贴URL,就好像您要用URL替换所选的文本一样。相反,Slack会自动将所选文本转换为链接。

鲁本的答案是可行的,但它看起来像一个无标题文件上传,如图所示:无标题文件发布到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通道。