#node.js #discord #discord.js #bots
#node.js #Discord #discord.js #боты
Вопрос:
Я начинаю кодировать бота Discord, и я использую базовый код котельной плиты, который указан на Discord.js Домашняя страница, которая является этой —
const Discord = require('discord.js');
const client = new Discord.Client();
client.on('ready', () => {
console.log(`Logged in as ${client.user.tag}!`);
});
client.on('message', msg => {
if (msg.content === 'ping') {
msg.reply('Pong!');
}
});
client.login('token');
Но, к сожалению, это не работает. И да, я заменил токен на токен бота. Когда я его запускаю, он не отвечает в течение нескольких секунд, а затем в отладчике появляется эта ошибка. (Я использую nodemon)
(node:14931) UnhandledPromiseRejectionWarning: AbortError: The user aborted a request.
at RequestHandler.execute (/home/sulphurouscerebrum/Projects/Discord Bot/Sulph Bot/node_modules/discord.js/src/rest/RequestHandler.js:93:15)
at process._tickCallback (internal/process/next_tick.js:68:7)
(node:14931) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)
(node:14931) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
Waiting for the debugger to disconnect...
Я попытался удалить и переустановить Discord.js но безрезультатно. Может кто-нибудь сказать мне, в чем проблема?
Ответ №1:
Запрос занял больше времени, чем указано restRequestTimeout
(15 секунд по умолчанию), и был прерван, чтобы не блокировать обработчик запроса. Это может быть внутренняя ошибка сервера на стороне Discord или просто медленное соединение. В последнем случае restRequestTimeout
опция in ClientOptions
может быть увеличена, чтобы предотвратить будущее AbortErrors
.
const client = new Discord.Client({ restRequestTimeout: 30000 }); // 30s
Ответ №2:
Это ошибка, возникающая в discord.js библиотека, когда веб-запрос зависает на длительное время, что может произойти из-за сбоя или плохого подключения к Интернету. Его можно игнорировать, поскольку он не убивает программу, но вы можете попытаться поместить свой код в оператор try / catch, чтобы избежать этого.