【发布时间】:2020-01-29 23:01:04
【问题描述】:
我创建了一个云函数,它会在 Firebase 存储中的任何新文件上传时触发。一旦成功上传功能将更新其元数据,但即使使用“setMetadata()”设置新的元数据也不会被应用。在这个过程中没有错误,但是在检查更新的元数据时,新的没有反映。
exports.onImageUpload = functions.storage.object().onFinalize(async (object) => {
const storageRef = admin.storage().bucket(object.bucket);
var metadata = {
'uploader': 'unknown'
}
await storageRef.file(object.name).setMetadata(metadata).then(function(data) {
console.log('Success');
console.log(data);
return;
}).catch(function(error) {
console.log(error);
return ;
});
return;
});
没有错误,并且在 Cloud Function 上记录其打印的“成功”消息。 “metageneration: '2'” 属性也得到了更新,这意味着它应该使用新值更新元数据,但它没有。
【问题讨论】:
标签: javascript firebase google-cloud-functions firebase-storage firebase-admin