与嵌入分开发送附件的 Djs 交互
Posted
技术标签:
【中文标题】与嵌入分开发送附件的 Djs 交互【英文标题】:Djs interaction sending attachment separately from embed 【发布时间】:2021-12-01 23:50:09 【问题描述】:我试图让我的消息看起来像this,但由于interaction.reply
,我得到了this。
这是我的代码:
fs.readdir("./pics", (error, files) =>
if (error) return console.log(error)
const num = (Math.floor(Math.random() * files.length)+1).toString();
const imagembed = new Discord.MessageEmbed()
.setTitle("Some cute pic for you!")
.setColor("#980002")
.setFooter("Requested by " + interaction.member.user.tag);
interaction.reply( embeds: [imagembed], files: [`./pics/$num.jpg`])
)
有什么解决办法吗?
【问题讨论】:
【参考方案1】:将图像附加到嵌入中
可以使用MessageEmbed.setImage()
在嵌入中附加图像。这需要一个有效的图片链接。
附加本地图片
由于MessageEmbed.setImage()
是唯一的方法,要将图像附加到嵌入,您必须使用一些技巧。您必须将图像作为文件发送到您的MessagePayload
并将其添加到嵌入中。
const embed = new discord.MessageEmbed().setImage("attachment://image.png");
interaction.reply( embeds: [embed ], files: [`./path/to/image.png`] );
解决您的问题
对你来说,这将导致以下代码:
fs.readdir("./pics", (error, files) =>
if (error) return console.log(error)
const num = (Math.floor(Math.random() * files.length) + 1).toString();
const imagembed = new Discord.MessageEmbed()
.setTitle("Some cute pic for you!")
.setColor("#980002")
.setFooter("Requested by " + interaction.member.user.tag)
.setImage(`attachment://$num.jpg`);
interaction.reply( embeds: [imagembed], files: [`./pics/$num.jpg`] )
)
【讨论】:
以上是关于与嵌入分开发送附件的 Djs 交互的主要内容,如果未能解决你的问题,请参考以下文章
Python:多部分 html 电子邮件通过嵌入式图像和附件发送
如何使用嵌入discord.net webhook c#发送文件附件
python 使用嵌入的附件和图像以HTML格式发送电子邮件。
python [Python]发送包含嵌入式图像和应用程序附件的电子邮件
如何使用 Outlook 2010(无 smtp)和 python 发送带有嵌入图像(不是附件)的 HTML 格式电子邮件