问题描述
我正在尝试将一些文件存储在 Firebase 存储中,当用户访问或下载这些文件时,我想显示有关每个文件的一些额外信息(例如描述、日期等)。文件元数据只能存储名称、大小和内容类型,那么我应该在哪里以及如何存储额外的信息?
解决方法
如 doc 中所述,上传文件时,您可以通过 SettableMetadata
类添加一些“自定义元数据”,如下所示:
// Create your custom metadata.
firebase_storage.SettableMetadata metadata =
firebase_storage.SettableMetadata(
cacheControl: 'max-age=60',customMetadata: <String,String>{
'userId': 'ABC123',},);
try {
// Pass metadata to any file upload method e.g putFile.
await firebase_storage.FirebaseStorage.instance
.ref('uploads/file-to-upload.png')
.putFile(file,metadata);
} on firebase_core.FirebaseException catch (e) {
// e.g,e.code == 'canceled'
}
,
您可以像其他答案一样将自定义元数据与 firebase 存储中的文件一起使用,或者您可以为其创建一个 firestore 文档。如果您需要一些示例代码,请告诉我