0

我仍然是 javascript 的新手,并试图用 express js 编写一个 Slackbot。我想使用https://api.slack.com/methods/channels.history中定义的方法。这在语法上应该如何看?由于该方法只是一个 URL,我该如何使用它?

4

1 回答 1

0

您需要对 URL 发出 http 请求,如果有更多消息 (has_more:true|false),您将收到一个包含状态 (ok:true|false) 的对象的响应,然后是一个数组实际消息(消息:数组)。

响应应如下所示:

{
  has_more:true
  messages:Array[100]
  ok:true
}   

您发出 get 请求的 url 应该类似于:

https://slack.com/api/channels.history?token=BOT_TOKEN&channel=CHANNEL_ID&pretty=1

其中 BOT_TOKEN 是附加到您创建的机器人的令牌,而 CHANNEL_ID 是您想要获取历史的频道的 ID(不是名称)(9 个大写字母数字字符,以“C”开头)。

您还可以在 url 中包含一些其他参数。例如,"latest="、"oldest="、"inclusive="、"count=" 和 "unreads="。有关这些参数的详细信息可以在您链接到的页面上找到 ( https://api.slack.com/methods/channels.history )。

如果您想在浏览器的控制台中对其进行测试,请找到加载了 jQuery 的页面,打开您的开发工具并进入控制台,然后输入以下内容(使用您的机器人令牌和频道 ID 交换):

$.get('https://slack.com/api/channels.history?token=BOT_TOKEN&channel=CHANNEL_ID&pretty=1', function(response){console.log(response)});
于 2016-08-04T18:42:11.640 回答