DiscordAPIError: Неизвестное сообщение (пожалуйста, помогите)

#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.');
 

В этом случае будет проверен ответ на запрос выборки..