gpt4 book ai didi

javascript - 从 JavaScript 对象伪造 Node.js 可读文件流

转载 作者:太空宇宙 更新时间:2023-11-04 00:20:20 25 4
gpt4 key购买 nike

我想从 JavaScript 对象创建一个“假文件”,因为我使用的库需要一个文件作为输入,但我在内存中有一个对象。

所以它期待这样的代码

var file = fs.readFileSync('{/path/to/file}');

lib.addDocument(config, file),

我想从我称为有效负载的对象创建一个假文件,然后发送该文件,到目前为止我最接近的尝试如下所示:

  var fake_file = new stream.Readable({ objectMode: true });
fake_file.push(msg.payload);
fake_file.push(null);
lib.addDocument(config, fake_file),

我觉得我已经很接近了,但我还不能完全让它发挥作用。当前错误是

{ Error: Unexpected end of multipart data

最佳答案

var Readable = require('stream').Readable
var obj = { objectMode : true};

var rStream = new Readable
rStream.push(JSON.stringify(obj));
rStream.push(null); //EOF
lib.addDocument(config, rStream)

对于 v10 以下和 v4 以上的旧版本:

var Readable = require('stream').Readable
var obj = { objectMode : true};
var chars=JSON.stringify(obj).split('');
function read(n){this.push(chars.shift())}
var rStream = new Readable({read:read});
lib.addDocument(config, rStream)

关于javascript - 从 JavaScript 对象伪造 Node.js 可读文件流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44776472/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com