当前位置: 首页 > 知识库问答 >
问题:

如何读取Amazon s3密钥的一部分,假设该密钥的“多部分上传完成”尚未发生?

周奇文
2023-03-14

我正在处理aws S3多部分上传,我面临以下问题。基本上,我将一个文件块一个块地上传到s3,在此期间,如果本地文件发生任何写入,我希望将该更改反映到当前上传过程中的s3对象。这是我正在遵循的程序,

    < li >启动多部分上传操作。 < li >逐个上传零件[5 mb块大小。][暂时不要完成该操作。] < li >在这段时间内,如果写入该文件,[假设我有写入的详细信息[offset,no_bytes_written] ]。 < li >我将计算本地发生的写入的零件号,并从s3上载的对象中读取该块。 < li >从本地文件读取相同的块,并从s3写入读取部分。 < li >将同一零件上传到s3对象。 < li >这将是a同步操作。我将在最后完成多部分操作。

我在读取处于多部分上传过程中的上传部分时遇到问题。是否有任何可用于相同的API?

任何帮助将不胜感激。

共有1个答案

何志业
2023-03-14

S3 中没有用于检索部分上传的一部分的 API。您可以列出这些部分,但我不相信在上传后有任何方法可以检索单个部分。

您可以重新上传部件。S3将抛弃以前的部分,使用新的部分代替它。因此,如果您在本地拥有文件的旧版本和新版本,并且自己跟踪这些部件,我想理论上您可以替换在启动多部件上载后修改过的各个部件。然而,在我看来,这将是一个非常复杂和容易出错的过程。如果对文件所做的更改是向其中添加数MB的数据,该怎么办?这不会改变你的界限吗?这也会潜在地影响其他部分吗?

我不是说这不能完成,但我是说这似乎很复杂,需要你在客户端做很多簿记。

 类似资料:
  • 我试图用python写的lambda (aws)完成多部分上传。下面是我正在使用的代码。大约有120个部件,总大小为30GB。下面的操作似乎没有在5分钟内完成,因此lambda关闭,上传似乎没有完成。S3提供异步多部分上传功能吗?我相信这将确保文件得到合并,不管lambda关闭。

  • 我正在尝试创建一个公钥以允许我推送到Git,但我的. ssh文件夹尚未创建。 以下是我运行的命令: $ssh-keygen-t rsa-Cemaill@me.com 生成公共/私有rsa密钥对 输入保存密钥的文件(/h/.ssh/id\u rsa): 这就是H:驱动器配置、数据、配置文件、配置文件中的全部内容。V2 我认为有一个问题,因为当我得到提示输入文件,其中保存密钥(/h//. ssh/id

  • 我尝试用JPA连接两个表 第一个表与实体ReportTripSing相关联第二个表与实体TripData相关联第二个表的主键用复合键(实体TripDataPK)描述 如您所见,我想将ReportTripSingle与TripData结合起来 它不起作用:( 这是堆栈跟踪: 原因:组织。冬眠AnnotationException:com的referencedColumnNames(FTP\U ID)

  • 编辑:没有必要的变通方法。使用上述代码可以将外部生成的密钥导入到Android Keystore中。

  • 如果我尝试使用OpenSSL命令行生成3TDES加密的PKCS 8密钥: 我得到: PKCS8 RFC没有说明必须使用哪种算法来创建密钥块。它确实给出了PKCS5算法作为例子。有没有办法使用OpenSSL创建一个由DES密钥加密的PKCS8密钥?如果不是,它是OpenSSL不支持的还是一个非常不标准的事情? 下面是通过OpenSSL命令行(密码测试)使用基于密码的加密创建的示例: 这里是我手工制作

  • 我有一个Azure存储连接字符串,我想从中读取帐户名称和帐户密钥。 我可以获取帐户名称,但不能获取密钥。 有人能建议我如何读取密钥吗? ConnectionString:DefaultEndpointsProtocol=https;AccountName=开发;AccountKey=TSDSGyduysaugdsay4ar6epn2ie9yoilep5rrfxeeaj9;EndpointSuffi