ノードとエクスプレスを使用して、単純なアプリのバックエンドを作成しています。これが私のコードの構造です。
app.js
var express = require("express");
var bodyParser = require("body-parser");
var app = express();
app.use(bodyParser.json());
var router = require('./router')(app);
app.listen(80,function(){
console.log("Started on PORT 80");
})
module.exports = app;
サブディレクトリ /router の下に index.js があります
module.exports = function (app) {
app.use('/login', require('./routes/login'));
};
/router/routes の下に login.js があります
var express = require('express');
var router = express.Router();
router.post('/', function(req, res){
var user = req.body.user;
console.log("Handler for /login called");
console.log("The username is: "+ user);
});
module.exports = router;
を使用してテストしています
curl -X POST -d '{"user":"alpha", "password":"beta"}' http:my-app-ip/login --header "Content-Type:application/json"
コンソールThe username is: undefined
は、キー ユーザーの値の代わりに出力します。
私は何を間違っていますか?