javascript - 将文件下载到本地计算机并以邮件附件的形式发送

标签 javascript discord discord.js

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

想象一下,聊天中有人发送了一张图片,机器人有没有办法下载图片或获取图片的 URL?

谢谢!

最佳答案

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

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
        }
    }
});

注意:我仅将附件限制为 png,以便我们下载经过验证的图像。否则我们可能会下载一些错误的脚本,甚至可能是病毒。下载东西时要小心。

现在我刚刚给您的代码调用 download 并传入 url
现在您将需要 request模块 fs模块。

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

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

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

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

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

关于javascript - 将文件下载到本地计算机并以邮件附件的形式发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51550993/

相关文章:

Javascript 构造函数 - 使用对象?

javascript - 如何在 django 模板标签中传递 Javascript 变量

javascript - 查找键值的对象键并将其转换为 moment.utc()?

python - Discord 机器人如何加入 Discord Rewrite 中的语音 channel ?

c# - 如何在 C# if 语句中使用 Discord 表情符号

javascript - Discord.JS 在消息中获取第一个附件

javascript - 如何使用 Discord.js v13 实时获取发言状态

javascript - 动态地向我的模板添加脚本 - 我可以这样做吗?

javascript - 遍历雪花数组

javascript - await 仅在异步函数 Canvas Discord JS 中有效