Как отправить изображение base64 в Discord WebHook?

#node.js #reactjs #base64 #discord.js #webhooks

#node.js #reactjs #base64 #discord.js #webhooks

Вопрос:

Я попробовал следующий код:

 const Hook = new Discord.WebhookClient(DiscordWebHookID, DiscordWebHookToken);

const image = 'data:image/PNG;base64,R0lGODlhPQBEAPeoAJosM...'; //sample bit64image

const imageStream = new Buffer.from(image.split("base64,")[1],'base64');
const attachment =  new Discord.MessageAttachment(imageStream);

const embed = new Discord.MessageEmbed().attachFile(attachment);

Hook.send(embed);
 

Я подтвердил, что встроенное сообщение отправляется при удалении свойства вложения.

Комментарии:

1. В чем проблема со следующим кодом?

2. Ни одно изображение не публикуется внутри канала @PLASMAchicken

3. В последней версии это attachFiles, а не attachFile, поэтому подумайте об обновлении.

Ответ №1:

Если вы измените «.attachFile» на «.attachFiles», ваш код будет работать отлично. https://discord.js.org/#/docs/main/stable/class/MessageEmbed?scrollTo=attachFiles

Комментарии:

1. К сожалению, это не сработало. У меня все еще нет сообщения в канале.

2. Ваше изображение bit64 может быть неправильным, я протестировал код на своей машине, и он работал, только с этим небольшим изменением.

3. Вы можете просмотреть мой код здесь: gist.github.com/LiamTownsley/fb20d404a3451b667fbfddd9298fafc1