express4でPOSTメソッド使おうとしたらbodyDecoderもbodyParserも無かった。
express4でpostメソッド使ってみようと思った。 思ったので調べて試してみたのだけれど、bodyDecoderなんてミドルウェアはねぇよって怒られてしまった。
更に調べてみたら名前が変更になっていたらしいので変更後のbodyParserとやらを試したのだけれどこっちも怒られてしまった。
諦めて公式のドキュメントを見に行ったら一瞬で判明。body-parserっていう別のモジュールに切り離されていたらしい。
$ npm install body-parser
でインストール出来た。
テストで書いたコードがこんなの。
app.use(require('body-parser')());
app.get('/', function(req, res){
res.send('<form action="/newroom" method=post><input name=name><input type=submit></form>');
});
app.post('/post', function(req, res){
res.send(req.body.name);
});
req.body
でアクセスできますよ、ということのようだ。楽でいいね。
しかし、ミドルウェアの名前変わりまくるのなんとかならんのか・・・。
参考: