如何在Node.js中将字符串作为读取流对象传递?

时间:2019-01-29 14:33:36

标签: node.js filesystems fs

我正在尝试为第三方API进行多重导入功能,我需要在其中传递json文件读取流。

但是我的api中已经有一组用户数据,我需要将这些数据作为读取流传递。

我已经尝试过的选项。

  1. fs.createReadStream

fs.createReadStream(Buffer.from(JSON.stringify('[{ user: "data"}]')));

  

createReadStream不接受Buffer并返回

     

ENOENT:没有这样的文件或目录,请打开

  1. require('stream').Readable

    const Readable = require('stream').Readable; const readStream = new Readable(); readStream._read = () => {}; readStream.push(JSON.stringify(u)); readStream.push(null);

  

读取流在我的请求中给我“无效的多部分有效载荷格式”错误

请找到我通过的用于上传多用户文件的请求对象

{
  "url": "",
  "method": "POST",
  "headers": {},
  "formData": {
    "userFile": ReadStream
  }
}

任何建议都是值得赞赏的

1 个答案:

答案 0 :(得分:0)

您可以从这样的字符串创建可读流:

import { Readable } from 'stream';
// OR: const { Readable } = require('stream');

const stream = Readable.from("This is the stream content");