1
ファイルとフィールドを含むFormDataをサーバー上のルートに送信していますが、connect-busboyで両方のイベントを起動できません。ファイルとフィールドでFormDataを送信すると、busboyはファイルイベントのみを起動します
私はクライアント側で:私は、私はフェッチオブジェクトのボディプロパティにデータを割り当てるフェッチ使用しています
var data = new FormData();
data.append('file', MyFile);
data.append('key_one', 'value_one');
。サーバーのURLのルート上に
fetch(url, {
method: 'POST',
body: data
}).then(...){...}.catch(...){...}
:
が、私はその後、私が持っている
limits: {fileSize: 5 * 1024 * 1024, parts: 2}
で構成busboyミドルウェアを使用するには、
req.pipe(req.busboy);
req.busboy.on('field', function(key, value){
console.log('field fired');
}
req.busboy.on('file', function(fieldname, file, filename){
console.log('file fired');
}
私の問題は、私だけ "を得るということですファイルが発射されました '。私がファイルリスナーを取り除くと、私は「フィールドを解雇」します。なぜ誰かがファイルだけがこの設定で解雇されるのを知っていますか?また、私が今使っている唯一の他のミドルウェアは、cookieParser、expressSession、パスポートです。
ありがとうございます!