slack - 你能以非交互方式使用松弛按钮吗?
问题描述
在使用 Slack 的块工具包构建器时,我创建了一条消息,该消息将发送通知以及供用户单击的链接。我喜欢默认按钮的外观,但每当我单击它时都会收到一条警告,说我的应用程序未配置交互性。
该链接确实有效,但警告图标令人不安。有没有办法在不期望交互的情况下使用这些按钮?另一种方法似乎只是使用降价链接,但我认为它看起来不太好。
我的块:
{
"blocks": [
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "Hello here's a notification"
}
},
{
"type": "section",
"text": {
"type": "mrkdwn",
"text": "<https://google.com|View Conversation>"
}
}
]
}
如果我直接从块工具包构建器发送此块,则没有警告消息。我猜这是因为它是作为我的用户而不是应用程序发送的。
解决方案
到目前为止,没有办法设置没有交互性的块工具包按钮。即,当有人点击按钮(带有或不带有 URL)时,Slack 会向您的应用配置中的预配置 URL 发送请求。应用程序需要确认此请求并发送HTTP 200 OK
响应,以便按钮 URL 可以在没有错误标志的情况下工作。
您可以在此处阅读关于 Slack 的 GitHub 的相当详细的讨论。
目前,一种解决方法是在网络上的某处设置一个 webhook URL(谷歌云运行可能是一个很好的免费解决方案),它返回一个确认响应。然后,您可以更改应用的配置以使用此 URL 进行应用交互。
ps 当您使用 block kit builder 向 Slack 发送预览消息时,它使用与 Slack Web 应用程序使用的用户令牌相同的用户令牌。当您使用任何其他用户令牌(从应用程序的安装流程接收)时,您上面提到的行为无法复制。
推荐阅读
- android - 解压密码保护 Zip 文件很慢,如何让它变快?
- amazon-web-services - 终止自动缩放组中的特定 ec2 实例
- sphinx - 如何在狮身人面像中对多面体的 MVA 字段进行分组
- powershell - 批处理脚本调用powershell脚本
- python - Apache Airflow:airflow initdb 命令 throws = (_mysql_exceptions.OperationalError) (1292, "Incorrect datetime value:)
- python - 为命令行运行 python 程序
- json - 在swift中使用本地json文件登录功能
- xamarin.forms - Xamarin.Forms 将用户保存在共享函数中
- javascript - ChartJS:如何将顶部标签与底部标签对齐?
- c# - .cshtml 中的 @{} 是什么意思?