You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在DiscordJS Bot中使用FS返回PNG文件而非文件名

DiscordJS Bot返回本地PNG文件的实现方法

完全可以直接返回PNG文件本身,具体实现逻辑如下:

  • 拿到目标PNG的文件名后,拼接本地文件夹的完整路径,推荐用path.resolve()方法生成绝对路径,避免相对路径受运行环境影响读取失败。
  • 用fs模块的文件读取方法获取文件二进制内容:同步读取用fs.readFileSync(文件绝对路径),异步读取用fs.readFile(文件绝对路径),最终拿到PNG文件的Buffer数据,不要停留在读取文件名的步骤。
  • 配合DiscordJS的附件类包装Buffer:v14及以上版本用AttachmentBuilder,写法示例为new AttachmentBuilder(pngBuffer, { name: '自定义展示的文件名.png' });v13及更早版本用MessageAttachment类,用法一致。
  • 发送消息时,将构造好的附件对象传入消息参数的files数组中,Discord会直接将PNG作为图片附件发送,用户接收后可直接查看图片,而非文件名文本。

内容的提问来源于stack exchange,提问作者MoulikChawla

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 16:54:02