#javascript #node.js #discord.js
Вопрос:
Доброе утро, прошу прощения за причиненные неудобства.
Я пытаюсь отредактировать сообщение, которое отправил со своим ботом несколько дней назад, но оно не позволяет мне его редактировать.
Я уверен, что это потому, что прошло около 7 дней, но даже в этом случае я хотел бы знать, есть ли способ отредактировать это сообщение.
Спасибо и еще раз приношу извинения за причиненные неудобства.
client.on('message', async (message) => {
if (message.content === '!update-info') {
if (!message.member.hasPermission('MANAGE_MESSAGES')) {
return message.channel.send('Only server moderators can run this command!')
}
const guild = client.guilds.cache.get('734517639732396122');
if (!guild) return console.log('Unable to find guild.');
const channel = guild.channels.cache.find(c => c.id === '737363248126492772' amp;amp; c.type === 'text');
if (!channel) return console.log('Unable to find channel.');
try {
const messageedit = await message.channel.messages.fetch('815522275344252928');
if (!message) return console.log('Unable to find message.');
await messageedit.edit("__**Reacciona para activar notificacioness**__nn`Actualizaciones:` <:update:815505836880429087> n`Twitter:` <:twitter:815505836842942474> n`Facebook:` <:facebook:815505775278424084>n`Instagram:` <:instagram:815505836608454667>");
console.log('Mensaje de informacion actualizado.');
} catch(err) {
console.error(err);
}
message.delete();
}
});
DiscordAPIError: Неизвестное сообщение
по запросу. выполнить (/home/банджи/Discord-Боты/Uniito-бот/node_модули/discord.js/src/rest/RequestHandler.js:154:13)
при выполнении заданий и запросов (внутренний/процесс/task_queues.js:97:5) при выполнении асинхронного запроса.push (/home/банджи/Discord-Боты/Uniito-бот/node_modules/discord.js/src/rest/RequestHandler.js:39:14)
в асинхронном менеджере сообщений._fetchId (/home/банджи/Discord-Боты/Uniito-бот/node_модули/discord.js/src/менеджеры/MessageManager.js:135
в асинхронном клиенте. (/главная/банджи/Дискорд-Боты/Uniito-бот/клиент.js:105:33) { метод: ‘получить’, путь: ‘/каналы/738226897690820680/сообщения/815522275344252928’, код: 10008, HttpStatus: 404 }
Комментарии:
1. в вашем запросе на этот канал — при получении этого сообщения вы получаете ошибку 404.. Этого сообщения не существует.. Возможно, его удалили ? Но ошибка верна.. API сообщает вам, что там нет никакого сообщения.
2. также вы проверяете
message
, определен ли он после вызова.. Может быть, ты имеешь в видуmessageedit
?3. Нет, сообщение не было удалено, оно есть.
Ответ №1:
Ошибка верна, но вы не улавливаете свою ошибку, потому что в вашей логике есть путаница.
const messageedit = await message.channel.messages.fetch('815522275344252928');
if (!message) return console.log('Unable to find message.');
Я верю, что ваше «если» должно быть
const messageedit = await message.channel.messages.fetch('815522275344252928');
if (!messageedit) return console.log('Unable to find message.');
В этом случае будет проверен ответ на запрос выборки..