javascript - 检索 S3 上传的时间戳

标签 javascript amazon-web-services amazon-s3

我想处理浏览器缓存 (indexedDB) 和 S3 之间的同步。因此我使用时间戳。

棘手的部分是,我的浏览器应用程序需要知道 S3 中文件的确切“上次更新”时间戳,以便将其与本地缓存的文件一起存储(这样我可以通过时间戳来感知一侧或另一侧的差异)不等于)。

目前,我最好的解决方案是:


  // Upload of file
    var upload = new AWS.S3.ManagedUpload({
        params: {
            // some params
        }
    });
    await upload.promise();
  // Call of listObjectsV2
    var s3Objects = await s3.listObjectsV2(params).promise();
    // get "LastModified" value from listObjectsV2

我真的不喜欢这个解决方案,因为它额外调用了“listObjectsV2”,这需要时间并且由 AWS 收费。

从我的头脑中,我期望上传的返回参数中应该有一些我可以利用的东西。但我找不到任何东西。我错过了什么?

最佳答案

查看适用于 JavaScript 的 AWS 开发工具包的文档,我认为您根本没有遗漏任何内容:https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3/ManagedUpload.html#promise-property

成功上传后,它根本不返回任何日期时间字段。

(我自己一直在寻找这样的东西,只针对NET。最后我不得不在上传后开始发送元数据请求。)

也许监听 S3 事件可能是另一种选择:https://aws.amazon.com/blogs/aws/s3-event-notification/

关于javascript - 检索 S3 上传的时间戳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63521841/

相关文章:

javascript - JQuery 提交函数不启动

javascript - 使所有 <div> 包装器具有相同的高度,除非单击 'read more'

javascript - Angular js : how to use loop in directive

javascript - 检测 Google map 街景模式

node.js - 无法将 Node Restify 应用程序部署到 AWS EB

tomcat - 如何模拟产品环境

amazon-web-services - 为什么使用 SNS 来触发 lambda 函数,而不是 API 网关?

node.js - fs.readFile 无法在 nodejs 中使用 ffmpeg 读取缩略图生成的文件

amazon-s3 - 当我从 EMR 5.7 升级到 EMR 5.8 时,s3-dist-cp 失败并出现 OutOfMemoryException

mysql - C# |如何通过 AWS Lambda 函数调用 MVC 数据访问层