2016-02-13 19 views
0
module.exports = function(app) { 
    var User = app.models.account; 

    //login page 
    app.get('/', function(req, res) { 
    res.render('login'); 
    }); 

    //verified 
    app.get('/verified', function(req, res) { 
    res.render('verified'); 
    }); 

    //log a user in 
    app.post('/login', function(req, res) { 
    User.login({ 
     email: req.body.email, 
     password: req.body.password 
    }, 'user', function(err, token) { 
     if (err) { 
     res.render('response', { 
      title: 'Login failed', 
      content: err, 
      redirectTo: '/', 
      redirectToLinkText: 'Try again' 
     }); 
     return; 
     } 

     res.render('home', { 
     email: req.body.email, 
     accessToken: token.id 
     }); 
    }); 
    }); 
} 

我想鏈接我的模型帳戶,其中有一個基地'用戶'。然後調用User.login函數等。無法讀取未定義的屬性「電子郵件」 - 迴環框架

但它說Cannot read property 'email' of undefined爲什麼?

此行是作爲環回是基於express.js框架人體所需的解析器的中間件,但默認不啓用

什麼給它說email: req.body.email,

+0

你使用的是bodyparser中間件嗎?你確定電子郵件是從前端發送的嗎? – eltonkamami

+0

不是我真的覺得,我正在跟蹤回送用戶管理示例,並試圖在我自己的設置中阻止。我需要這樣的中間件嗎? –

+0

另外我如何檢查是否確實我想要的東西是從前端發送的?對不起,我有點noob框架 –

回答

0

你需要把身體解析器中間件在middleware.json文件。它已經包含在node_modules

"parse": { 
    "body-parser#json": {}, 
    "body-parser#urlencoded": {"params": { "extended": true }} 
} 
相關問題