当您上传文件时,或上传文件后,您可以创建一个StorageMetadata 对象来指定您期望的所有常用元数据,例如 contentType 和编码等。它们还为您提供一个名为customMetadata 的项目,它是一本包含您想要的任何内容的字典。因此,如果您想在其中添加一个 userUID,您可以这样做:
let myMetadata = StorageMetadata()
myMetadata.customMetadata = ["userUID" : "abc123"]
拥有此元数据对象后,您可以使用存储引用来更新文件中的元数据。
let fileReference = storageReference.child("files/userImage.jpg")
fileReference.updateMetadata(metadata) { (metadata, error) in
//Check to see if you need to handle an error, etc.
}
您也可以在上传文件时执行此操作:
let fileReference = storageReference.child("files/userThumnail.jpg")
fileReference.putData(imageData, metadata: myMetadata) { (metadata, error) in
//Handle error, etc.
}
稍后,如果您需要知道附加到文件元数据的 userUID,您可以像这样访问它:
let fileReference = storageReference.child("files/userImage.jpg")
fileReference.getMetadata { (metadata, error) in
if let data = metadata, let userUID = data.customMetadata["userUID"] as? String {
//Got it. Do whatever you need with it.
print(userUID)
}
}