2016-06-21 3 views
0

sails-skipperのドキュメントを読み終えました。マルチパートファイルのアップロードを処理する良い方法のように見えます。sailsjsでマルチパートではないストリームをアップロードする方法

しかし、マルチパートペイロードではないもののアップロードをストリーミングする場合はどうすればよいですか? - 私の現在のケースでは、単純な "text/csv"アップロード。

私は単純にrequest.pipeを使ってみましたが、これはうまくいかないようです。

答えて

0

答えは...船長がここで助けてくれるわけではありません。むしろ、middlewarereq._body = trueに設定してskip上流のbodyParser(デフォルトでは帆用のスキッパー)にする前にmiddlewareを使用してください。 configに私の場合は

、/ http.js:

var typeIs = require('type-is'); 

module.exports.http = { 

    middleware: { 

    order: [ 
     ... 
     'dontParseCSV', 
     ... 
     'bodyParser', 
     ... 
    ], 
    dontParseCSV: function (req, res, next) { 
     if(typeIs(req, 'csv')) { 
     // fool body parser into thinking already parsed 
     // so we can stream csv 
     req._body = true; 
     } 
     next(); 
    }, 
    ... 
    } 
}; 

ルータはbodyParser後に来るので、(あなたがしたい場合は、少なくともだけで、特定のルートの これを行うには不便なビットであるかもしれませんルータは を認識し、正規表現でハックするだけではありません。私の場合、他のすべてのルートはjsonしか受け入れないので、問題はありません。

関連する問題