ibm-cloud-storage - 更新 COS 中已有的 Object
问题描述
我创建了一个调用 .putObject() API 以成功将对象(文件)添加到现有存储桶的 nodeJS 应用程序,如下所述: https ://console.bluemix.net/docs/services/cloud-object-storage/库/node.html#using-node-js
这工作正常并成功上传和创建新对象。但是,稍后我们希望更新有关该对象的一些元数据。{} 我看到您可以在 .putObject() 中将其指定为参数,但似乎没有 .updateObject() API - 对吗? https://ibm.github.io/ibm-cos-sdk-js/AWS/S3.html#putObject-property
如果我再次使用 Metadata{} 调用 .putObject() API,它会添加该信息但会删除 Body 内容,因此 6Mb 文件变为 0kb。执行此操作的唯一方法是下载对象内容、添加元数据{},然后再次重新上传所有内容吗?
或者我可以使用其他方法来更新元数据{}并保持原始对象(文件)不变?
我很欣赏答案之一是“使用数据库来存储链接的元数据”,这很好,但如果可能的话,我希望得到上述问题的答案,而不是偏离讨论。
解决方案
您可以通过复制对象并指定新元数据来将新元数据应用于对象。
麦克风
推荐阅读
- node.js - 反应 POST 请求(MERN 堆栈)
- flutter - 尝试实现行时如何修复“位置参数”错误
- javascript - 苗条组件 onLoad
- javascript - 请帮助获取 webelement 的值
- numpy - 重塑张量并在numpy(或张量流)张量中保持元素的原始相对位置不变
- vue.js - 使用 Nuxtjs 提交表单成功后如何重定向页面
- prolog - 在 Prolog 中进行量化的 ZDD
- php - 如何在 github 操作中获取 php ini-value 以指向我的项目目录中的文件
- r - 如何将 ggplot 多边形的颜色(非填充)映射到因子变量?
- javascript - Diceroll 游戏用 Javascript 计算顺子的分数