【问题标题】:What is Object Buffer in Node?什么是 Node 中的对象缓冲区?
【发布时间】:2022-02-09 23:06:40
【问题描述】:

在 nodejs 中,我有:

  const fileToUpload = fs.readFileSync(test_file_path);
  console.log("fileToUpload: type: ", typeof fileToUpload, ", content: ", fileToUpload);

哪个打印:

type: object,  content:  <Buffer 50 4b 03 04 14 00 08 00 08 00 78 84 cb 50 00 00 00 00 00 00 00 00 24 ae 12 01 3e 00 20 00 31 2e 32 2e 38 34 30 2e 31 31 33 35 36 34 2e 31 30 2e 31 2e ... 10573784 more bytes>

我知道fileToUpload 的类型是object。这是基本的 javascript 类型。 但是&lt;Buffer 50 4b 03 04 ....&gt; 是什么?是二进制格式吗?

在使用 ReactJS 构建的前端中,如何将附加的 zip 文件转换为 &lt;Buffer ... &gt; 类型?

我问的原因是我需要在 reactjs 客户端获取这种格式的文件才能将其上传到 AWS s3 存储桶。更多详情:Javascript on client side: how to upload a zip file to AWS S3 bucket through pre-signed URL?

【问题讨论】:

    标签: javascript node.js reactjs arraybuffer


    【解决方案1】:

    请参阅 Node.js 文档:
    https://nodejs.org/api/fs.html#fsreadfilesyncpath-options

    如果指定了编码选项,则此函数返回一个字符串。否则返回一个缓冲区。

    因此,要获取字符串,您可以编写例如:

    const text = fs.readFileSync(filePath, 'utf8');
    

    Buffer 类是 JavaScript 的 Uint8Array 的子类。

    Buffer (Uint8Array) 也有一些转换器方法:

    【讨论】:

      猜你喜欢
      • 2010-10-19
      • 1970-01-01
      • 1970-01-01
      • 2020-04-24
      • 1970-01-01
      • 2012-06-21
      • 2010-10-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多