我已经为正在制作的机器人编写了下一段代码,但是我无法弄清楚出了什么问题:
我的代码运行良好,可以获取消息,但也可以触发.catch
调用中的channel.messages.fetch(message_id)
……这不应该,因为这是成功的获取,没有错误……
有人知道这可能是什么吗?
我可以根据需要提供所有代码,但我感觉.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");
});
};
答案 0 :(得分:0)
结果是logger.error(记录器是winston)没有正确输出错误。使用console.error更可靠。 感谢sup39