Firebase-cloud-function缩略图存储到动态数据库路径



我成功地使用了生成缩略图云功能。我的代码正确地将调整大小的图像保存为"thumb_",将调整大小的图像存储到正确的存储位置,并将 downloadURL 写入我的实时数据库。

云函数正在将下载URL保存到ref('images')

return admin.database().ref('images').push({path: fileUrl, thumbnail: thumbFileUrl});

我的问题:

1. 如何将数据库引用更改为动态,以便根据用户选择上传的相册将 downloadURL 保存到数据库中的路径?

像这样:

return admin.database().ref('albums{albumId}').push({path: fileUrl, thumbnail: thumbFileUrl});

2. 我可以将 albumId 作为变量从我的客户端传递到我的云函数吗?

我找到了解决问题的方法,方法是使我的存储层次结构与我的数据库层次结构匹配。

当用户上传图片时,在存储事件上触发的云函数会获取文件路径(fileDir)。我将文件目录存储到字符串中

const dbPath = String(fileDir);

然后我将下载URL推送到我的数据库引用中的dbPath(因为我的存储层次结构与我的数据库层次结构匹配),这是有效的。

return admin.database().ref('/' + dbPath).push({hiRes: fileUrl, photoURL: thumbFileUrl});

最新更新