如何在firebase中调整已经存储的图像的大小?



我需要调整存储在firebase中的图像的大小,但是这些图像位于不同的文件夹中,像这样:

-bucket  
-user
-images

我需要去某些用户的图像,我想应用这个脚本来调整图像

const storage = await getStorage();
const bucketName = `$socialmediaAPG.appspot.com/userId/images/`;
const bucket = storage.bucket(bucketName);
const files = await bucket.getFiles();
for (const file of files[0]) {
const isImage = file.name.toLowerCase().includes('jpg') || file.name.toLowerCase().includes('jpeg');
const isThumb = file.name.toLowerCase().includes('thumbs');
if (isImage && !isThumb) {
console.info(`Copying ${file.name}`);
const metadata = await file.getMetadata();
await file.copy(file.name);
await file.setMetadata(metadata[0]);
}
}

我得到这个错误:

复制userId/images/image1.jpg错误:No such object: socialmediaAPG.appspot.com/userId/images/image1.jpg

这似乎不对:

file.copy(file.name)

传递给file.copy的参数是目的地文件名称,所以您试图将文件复制到自己。

您可能希望在目标文件名中添加自定义的thumbs后缀,例如

file.copy(file.name+"thumbs")

对于实际的调整大小,我建议查看关于在云存储中调整图像大小的其他问题。

相关内容

  • 没有找到相关文章

最新更新