【问题标题】:Discord.js bot: fetch messagesDiscord.js 机器人:获取消息
【发布时间】:2021-02-01 15:37:47
【问题描述】:

我已经为我正在制作的机器人编写了下一段代码,但我不知道出了什么问题: 我的代码工作正常,它可以获取消息,但它也会从channel.messages.fetch(message_id) 调用中触发.catch...它不应该这样做,因为它是成功的提取,没有错误... 有人知道它可能是什么吗?

如果需要,我可以提供我的所有代码,但我觉得我只是遗漏了 .then() 声明中的一些明显内容。

var message_fetch = function (
  client,
  channel_id,
  message_id,
  callback,
  event_data) {
  client.channels.fetch(channel_id)
    .then(function (channel) {
      channel.messages.fetch(message_id)
        .then(message => {
          logger.info("message_fetch: message found");
          logger.info(message);
          callback(message, event_data);
        })
        .catch(error => {
          logger.error("message_fetch: no message found");
          logger.error(error);
        });
    })
    .catch(error => {
      logger.error("message_fetch: no channel found");
    });
};

【问题讨论】:

  • 你还能打印.catch()中的error吗?
  • 它什么也没有打印出来……这就是奇怪的事情????至少当我成功时不会。catch(函数(错误){})我不确定发生了什么......
  • logger.error(error); 没有打印任何东西吗?
  • 正是......它是空的:(
  • 这很奇怪......它至少应该打印类似undefined'' 的内容。您可以尝试使用console.error 来打印error 吗?

标签: javascript node.js discord.js


【解决方案1】:

原来logger.error(记录器是winston)没有正确输出错误。使用 console.error 更可靠。 感谢 sup39

【讨论】:

    猜你喜欢
    • 2018-06-05
    • 2021-12-13
    • 1970-01-01
    • 2020-09-08
    • 2022-08-05
    • 2020-07-18
    • 2020-08-27
    • 2021-05-08
    • 1970-01-01
    相关资源
    最近更新 更多