ibm-cos-sdk putObject无法创建正确的二进制对象

问题描述

按照documentation中的说明,我尝试将文件上传到存储桶中。

如果我上载文本文件(即csv文件),则一切正常。

如果我上传二进制字符串文件(即pdf文件)(使用readAsBinaryString读取),则云存储上的文件错误的,只有空白页。文件大小和文件的256哈希会更改。

enter image description here

我全部用完了

  1. 缓冲区Buffer.from(binaryString)
  2. Uint8Array new TextEncoder().encode(binaryString)
  3. 二进制字符串

putObject({
    Bucket: 'test-b',Key: key,Body: binaryString
})

解决方法

请尝试使用多部分文件上传选项上传文件,而不是使用PDF的二进制文件流。