Node.js 错误:enoint:没有这样的文件或目录,stat';主页/容器/化身所在的args/(不和谐)

Node.js 错误:enoint:没有这样的文件或目录,stat';主页/容器/化身所在的args/(不和谐),node.js,discord,discord.js,Node.js,Discord,Discord.js,你好,我正在发出一个discord js send webhook message命令,但它一直在说这个错误:错误:NOENT:没有这样的文件或目录,stat'home/container/the args where the avatar' 这是我的代码: client.on('message', async msg => { if (!msg.content.startsWith(prefix) || msg.channel.type === 'dm' || msg.autho

你好,我正在发出一个discord js send webhook message命令,但它一直在说这个错误:错误:NOENT:没有这样的文件或目录,stat'home/container/the args where the avatar'

这是我的代码:

client.on('message', async msg => {
    if (!msg.content.startsWith(prefix) || msg.channel.type === 'dm' || msg.author.bot) return;
    if (!msg.author.id === 'xxxxxxxxx' || msg.author.id === 'xxxxxxxx') return;
    const args = msg.content.trim().split(/%%/g);
    if(msg.content.toLowerCase().startsWith(prefix + 'wh')) {
      //  msg.channel.send('name: ' + args[1] + 'avatar: ' + args[2] + 'message: ' + args[3])
await msg.channel.createWebhook(args[1], {
  avatar: args[2],
})
.then(async webhook => {
await webhook.send(args[3])
webhook.delete()
})
  .catch(error =>  msg.channel.send(error))
    }
});
我的代码有什么问题?为什么它认为args[2]是一个文件?

该方法的
avatar
选项是一个:

  • 缓冲区
  • 本地文件的路径
  • 网址

因此,如果用户放置的内容不是URL,则会将其视为本地文件的路径,而该文件不存在,从而导致错误。

请不要破坏您的帖子。通过在Stack Exchange网络上发布,您已授予Stack Exchange在下不可撤销的权利,以分发该内容(即,无论您未来的选择如何)。根据堆栈交换策略,帖子的非故意破坏版本是发布的版本,因此,任何故意破坏都将恢复。如果您想了解有关删除帖子的更多信息,请参阅: