我知道你可以通过文件名发送邮件,但是因为我正在使用Heroku,所以无法访问文件系统。
client.sendFile(messagedata, writer.toBuffer(), "file.png", "Just a message");
问题在于:
TypeError: client.sendFile is not a function
在discord.js中,哪个等效的函数可以让我将缓冲区作为文件发送?
我知道你可以通过文件名发送邮件,但是因为我正在使用Heroku,所以无法访问文件系统。
client.sendFile(messagedata, writer.toBuffer(), "file.png", "Just a message");
TypeError: client.sendFile is not a function
我知道这个方法有点老了,但下面这个例子可以在不使用文件系统的情况下,在频道中发送文件。
const { MessageAttachment } = require('discord.js')
const buffer = Buffer.from('Text in file')
const attachment = new MessageAttachment(buffer, 'file.txt')
channel.send(attachment)
.sendFile()
已被弃用。现在只能使用 .send()
。
要将文件发送给用户,您可以执行以下操作:
message.author.send({
files: [{
attachment: 'entire/path/to/file.jpg',
name: 'file.jpg'
}]
})
.then(console.log)
.catch(console.error);
message.channel.send({
files: [{
attachment: 'entire/path/to/file.jpg',
name: 'file.jpg'
}]
})
.then(console.log)
.catch(console.error);