2016-12-01 11 views
0

をURLエンコード:は私がexpress4で私のサーバー上でこのコードを持っている(ポストマン)とbodyParserのJSON(カール)同時に

curl -i -X POST -H "Content-Type:application/json" -d '{ "firstname" : "Frodo", "lastname" : "Baggins" }' http://localhost:3000/accounts 

、それがうまく動作ですが、私は郵便配達で、姓と名のfiledsを送信するときにx-www-form-urlencodedで、データ体内で、動作しません。

しかし、私は再びコードを有効にした場合:

app.use(bodyParser.urlencoded({ 
    extended: true 
})); 

ポストマンはうまく動作しますが、カールはありません。

両方の方法を併用する方法はありますか?だから私は代わりにangular2を例としてカールすることができます。

答えて

2

あなたがそうのようにボディパーサーをチェーンすることができます

app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({ 
    extended: true 
})); 

次いでそれを使用するかを検出します。

+0

いいです、それは動作します!どの本やチュートリアルでも読んだことはありません!どこのトリックを見つけるの? – stackdave

+0

@stackdave - これはデフォルトの動作であったが、コンストラクタを変更したときにチェーンされる可能性は決してありませんでした。だからあなたはちょうど知っている、またはStackOverflowで質問する必要があります:-) –

+0

私は;-)参照してくださいありがとう – stackdave

関連する問題