我成功使用了generate-thumbnail云功能。我的代码正确地将已调整大小的图像保存为' thumb _',将已调整大小的图像存储到正确的存储位置,并将downloadURL写入我的实时数据库。
云功能正在将downloadURL保存为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从我的客户端传递给我的云功能作为变量吗?
答案 0 :(得分:2)
通过使我的存储层次结构与我的数据库层次结构匹配,我找到了解决问题的方法。
当用户上传图片时,在存储事件上触发的云功能将获取文件路径(fileDir)。我将fileDir存储到字符串
中const dbPath = String(fileDir);
然后我将downloadURL推送到我的数据库引用中的dbPath(因为我的存储层次结构与我的数据库层次结构匹配),这是有效的。
return admin.database().ref('/' + dbPath).push({hiRes: fileUrl, photoURL: thumbFileUrl});