【问题标题】:How to get token for sending Slack ephemeral message如何获取发送 Slack 临时消息的令牌
【发布时间】:2019-09-10 19:39:11
【问题描述】:

我正在开发一个带有斜杠命令的 Slack 应用程序。 执行命令时,Slack 向我的 Web API 发送一个 POST 请求,其中包含通道 ID、用户 ID、token 等。 我想向频道发送一条短暂的消息。 此 API (https://api.slack.com/methods/chat.postEphemeral) 需要令牌。

那是我上面收到的请求中的令牌吗? 如果没有,我怎样才能得到那个令牌?

有关更多信息,Slack 工作区和频道是我自己创建的。

来自 Slack API 的响应:

{
    "ok": false,
    "error": "not_authed",
    "warning": "missing_charset",
    "response_metadata": {
        "warnings": [
            "missing_charset"
        ]
    }
}

【问题讨论】:

    标签: slack-api


    【解决方案1】:

    您从 Slack 请求中收到的令牌是一个验证令牌,但您需要一个用于 API 方法的用户或机器人用户令牌。

    verification token 可用于验证您收到的请求是否确实来自 Slack。但是,这种方法已经过时,您应该改用签名密钥。

    要获得user token,您需要将 Slack 应用安装到工作区。这可以在Slack app management page 上完成,如果您想将其安装在其他/多个工作区上,也可以通过Oauth process 完成。

    但是,您无需调用 API 方法(或用户令牌)即可生成对斜杠命令的临时响应。简单的 respond directly 到来自 Slack 的请求,您的消息采用有效的 JSON 或 send your message to the response_url 您收到来自 Slack 的请求。

    【讨论】:

    • 直接响应不是我需要的,因为我正在寻找一些异步任务完成后的回调机制。无论如何,你的回答给了我足够的信息。非常感谢。
    • 酷。只是为了向其他读者澄清。您可以将消息发送至response_url,以在 30 分钟内获得延迟/异步响应。
    猜你喜欢
    • 1970-01-01
    • 2022-12-07
    • 1970-01-01
    • 2016-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-26
    • 2020-07-25
    相关资源
    最近更新 更多