下载文件到本地计算机发送附加到消息不和谐

Teo*_*eva 1 javascript discord discord.js

查看 Discord.js 文档后,我可以找到问题的答案,有人知道该怎么做吗?页面上已经有问题,但没有答案或评论。

想象一下有人在聊天中发送了一张图片,有没有一种机器人可以下载图片或获取图片网址的方法?

谢谢!

Fru*_*mer 5

对于初学者......您需要代码才能访问附件。

client.on(`message`,function(msg){
    if(msg.attachments.first()){//checks if an attachment is sent
        if(msg.attachments.first().filename === `png`){//Download only png (customize this)
            download(msg.attachments.first().url);//Function I will show later
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

注意:我将附件限制为png仅用于下载经过验证的图像。否则我们可能会下载一些不好的脚本和可能的病毒。下载东西时要小心。

现在我刚刚给你的代码调用download并传入url.
现在,您将需要请求模块FS模块。

为什么?很高兴你问...该request模块访问 url 并从网络中提取数据。
fs模块在您的本地/外部机器上创建/读取/写入文件...

使用这两个模块,我们将其拉取然后保存

现在让我们假设url是这个meme.png(discord png 附件)

let request = require(`request`);
let fs = require(`fs`);
function download(url){
    request.get(url)
        .on('error', console.error)
        .pipe(fs.createWriteStream('meme.png'));
}
Run Code Online (Sandbox Code Playgroud)

瞧!我们现在有一张meme.png关于 Doritos XD的图片