gpt4 book ai didi

javascript - http.createServer如何使用fs.createReadStream从needle.post接收数据

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

我想将图像从一个nodejs服务器发送到另一个nodejs服务器。

我知道有很多解决方案,但我希望通过以下方式找出如何做到这一点:

服务器A(发送者)

选项1

needle.post('http://127.0.0.1:8000', fs.createReadStream('test.png'), function(err, resp, body) {               
});

选项2

var reader = fs.createReadStream('test.png');
reader.pipe(request.post('http://127.0.0.1:8000'));

服务器 B(接收方)

http.createServer(function(req, res) {
if (req.method === 'PUT' || req.method === 'POST') {
req.on('data', function(chunked) {
// I got nothing here
});
res.on('data', function(chunked) {
// I got nothing here
});
}
}).listen(8000, function() {
console.log('Listening for requests');
});

问题是,如果我读取使用 fs.createReadStream 发送过来的文件数据,我无法从服务器 B 接收任何数据。

[编辑]还需要知道如何使用 Express 处理上述内容

最佳答案

您可以尝试创建 fs.createWriteStream() 并分配给 req.pipe()。

...
var saveTo = './test.png',
ws = fs.createWriteStream(saveTo);

ws.on('close', function () {
cb();
});
req.pipe(ws);
...

关于javascript - http.createServer如何使用fs.createReadStream从needle.post接收数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35472515/

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