gpt4 book ai didi

node.js - 如何检测我的图像何时保存在我的服务器上?

转载 作者:行者123 更新时间:2023-12-05 07:05:17 25 4
gpt4 key购买 nike

基本上我完成了将图像上传到我的服务器(文件),当我想保存它时,我想使用名为 imagemin 的库来压缩大小,但是貌似我用这个库的时候,图片不可用,或者文件夹里没有保存完。

我试图压缩已经在同一个目录中的图像,它完美地压缩了它,所以我几乎可以肯定问题的发生是因为图像还没有完全保存。

我该如何解决?

let saveImage = (file) => {


return new Promise((resolve, reject) => {

let folder=__dirname + "/../gallery/";
let name_file="my_image.png";
file.mv(`${folder}${name_file}`, (err) => {

(async () => {

//at this moment my image is not avalaible
const files = imagemin([`${folder}${name_file}`], {
destination:folder,
plugins: [
imageminPngquant({
quality: [0.5, 0.6],
}),
],
});
console.log(files); //output is []
})();
resolve({ ok: true});
});
})
}



app.post("/upload_photo", [], async function (req, res) {
my_file = await saveImage(req.files.my_file);
if(my_file.ok){
return res.json({
ok: true,
message: "success!",
});
}

});

我假设一个没有错误的完美场景,然后我将进行相应的验证。注意:err 始终为 null,因此我没有错误。

最佳答案

这是异步操作。你需要等到它完成才能解决你的 promise

        const files = /* needs*/ await /*here*/  imagemin([`${folder}${name_file}`], {
destination:folder,
plugins: [
imageminPngquant({
quality: [0.5, 0.6],
}),
],
});

关于node.js - 如何检测我的图像何时保存在我的服务器上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62783244/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com