【问题标题】:How to respond to Slack thread with curl command如何使用 curl 命令响应 Slack 线程
【发布时间】:2018-12-03 16:51:30
【问题描述】:

我正在尝试让我的 curl 工作,然后我尝试创建对线程的响应。

我一直在关注这个文档: https://api.slack.com/docs/message-threading#threads_party 从测试人员那里我得到了拨打电话所需的信息: https://api.slack.com/methods/chat.postMessage/test

如果我尝试让卷曲看起来像这样:

curl -X POST -H 'Content-type: application/json' --data '{"token":"MYTOKEN","channel":"Chanel-ID", "message": {"text":"curl", "thread_ts":"1543586718.000800"}}' https://hooks.slack.com/services/MYSLACKHOOKID

每次我这样做时,我都会收到“无文本”的回复,有人可以帮助我实现目标吗?我只想回复一条消息。

【问题讨论】:

    标签: curl slack slack-api


    【解决方案1】:

    您的 curl 语句中有几个问题。

    1. 传入的 webhook 不支持线程,因此您需要改用 chat.postMessage API 方法。如documentation中所述:

      传入的 webhook 不支持线程。如果您希望您的应用程序 在线程中回复消息,使用 chat.postMessage。

    2. 您的 JSON 语法不正确。没有message 属性。而是使用所有需要的属性(token 除外)创建一个平面 JSON 数组,例如channeltextthread_ts。请参阅此处了解chat.postMessage的完整语法

    3. 当以 JSON 格式发布时,您必须在授权标头中包含您的令牌,而不是在您的请求正文中。正如here 的详细解释。

    4. 最后,但同样重要的是,我建议您指定字符集,否则您会收到警告。

    完整的卷曲看起来像这样:

    curl https://slack.com/api/chat.postMessage -X POST -H 'Content-type: application/json; charset=utf-8' -H "Authorization: Bearer TOKEN" --data '{"channel":"CHANNEL-ID", "text":"curl", "thread_ts":"THREAD-TS"}'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-11-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多