2016-11-20 4 views
0

のために働いていない私は理解していない:restifyのこの作品、なぜボディパーサーが何らかの理由

instance.use(restify.bodyParser()); 

が、これは動作しませんが:

instance.use((req, res, next) => { 
    restify.bodyParser(); 
    next(); 
}); 

UPD:私が試してみましたrestify.bodyParser()(req, res, next)になります。実際には何らかの理由で動作しません。

restify.bodyParser() [read、parseBody]の配列をエクスポートします。したがって、restify.bodyParser()(...)を使用すると、エラー... is not a functionがスローされます。

私はまだそれを達成しようとしています。

答えて

2

useは、argument of the form function (req, res, next) or an array of functions of this formが必要です。 restify.bodyParser()は、この形式の関数の配列です。したがって、配列内の各関数にreqresnextを渡す必要があります。あなたがしたいことに応じて、一連のミドルウェアを返すか、ミドルウェアを順番に呼び出すことができます。

+0

くそー、それは簡単です)ありがとう –

+0

私はちょうどそれをテストしました。何らかの理由でそれが機能していません。問題のUPDを参照してください –

+0

あなたは正しいです、 '使用'はミドルウェアの配列を受け入れることができます、それについて考えることはありませんでした。私は自分の答えを更新しました。しかし、正確な使用法は、私たちのユースケースに大きく依存します。そのため、コード例を削除しました。 – inyono

関連する問題