javascript – 如何修改node.js流

我正在从S3流式传输xml文件.我需要为sphinx搜索引擎构建一个具有不同结构的新xml文件.我已经从S3流式传输文件,将其传输到我的SAX解析器中,但现在我需要弄清楚如何对流进行修改(在SAX解析器之后)并上传到S3.

parser.on('startElement', function(name, attrs) {
    // Do something
});

我发现了一个看起来很棒的S3库,它的流叫做knox,所以我目前正在使用那个库.我并没有被困在这个图书馆,只是我发现它似乎很体面.他们在示例中将数据流式传输到S3的代码仅来自HTTP请求.我是一个相对较新的流,因为我有PHP背景.

诺克斯示例流:

http.get('http://google.com/doodle.png', function(res){
  var headers = {
      'Content-Length': res.headers['content-length']
    , 'Content-Type': res.headers['content-type']
  };
  client.putStream(res, '/doodle.png', headers, function(err, res){
    // Logic
  });
});

我想我需要做一些事情.

parser.on('startElement', function(name, attrs) {

  var headers = {
      'Content-Length': res.headers['content-length']
    , 'Content-Type': res.headers['content-type']
  };
  client.putStream(res, '/doodle.png', headers, function(err, res){
    // Logic
  });

});

任何帮助是极大的赞赏.谢谢.

最佳答案
This discussion of Node’s new streams明确谈到从S3转换流.

注意:这是参考节点0.10.x中实现的流

点赞