4

S3 から xml ファイルをストリーミングしています。sphinx 検索エンジン用に別の構造の新しい xml ファイルを作成する必要があります。すでに S3 からファイルをストリーミングして SAX パーサーにパイプしていますが、ストリームを (SAX パーサーの後で) 変更して S3 にアップロードする方法を理解する必要があります。

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

knoxと呼ばれるストリーミングを行う優れた S3 ライブラリと思われるものを見つけたので、現在そのライブラリを使用しています。私はこのライブラリにとらわれていません。私が見つけたものはまともだと思われます。この例で S3 にデータをストリーミングするために必要なコードは、HTTP リクエストからのみです。私は PHP のバックグラウンドを持っているので、ストリームには比較的慣れていません。

Knox のサンプル ストリーム:

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
  });

});

どんな助けでも大歓迎です。ありがとう。

4

2 に答える 2

2

Node の新しいストリームに関するこの議論は、S3 からのストリームの変換について明確に語っています。

注意: これは Node 0.10.x で実装されたストリームを参照しています。

于 2013-09-08T21:25:14.190 に答える
0

https://www.npmjs.org/package/through

このモジュールは、必要なことを行います。

于 2014-06-04T08:25:48.550 に答える