【问题标题】:express.js and mysql authenticationexpress.js 和 mysql 身份验证
【发布时间】:2016-10-20 08:36:18
【问题描述】:

嘿伙计们,我一直在尝试使用 express.jsmysql 创建一个注册表单,但我的路线无法正常工作,因为即使正确填写了所有详细信息,它也会跳转到 else 语句,这是我的代码。

User.js内容:

exports.register = function(req, res, next) {
    req.getConnection(function(err, connection) {
        if (req.body.name && req.body.email && req.body.password && req.body.confirmPassword) {

        // if user puts non matching passwords
        if (req.body.password !== req.body.confirmPassword) {
            var err = new Error('passwords do not match ')
            err.status = 400;
            return next(err)
        } 
       // if user do not put name and email on registration
        if (!req.body.name && !req.body.email) {
            var err = new Error('Both name and email need to be inputed');
            err.status = 400;
            return next(err)
        }

       // if user puts correct info the get save to database
        var newUser = {
            name: req.body.name,
            email: req.body.email,
            password: req.body.password,
            confirmPassword: req.body.confirmPassword
        };

        connection.query('insert into Users set ?', newUser, function(err, results) {
            if (err) return next(err);
            req.flash("success", 'Welcome', newUser.name);
            req.session.user = newUser;
            res.redirect('/categories');
        });

    } else {
        var err = new Error('All fields must be filled. ')
        err.status = 400;
        return next(err)
    }
});
}

有人可以帮我找出哪里出错了吗?

【问题讨论】:

  • 你能显示你的req.body值吗?
  • 它返回一个空值
  • 你能给你看看 app.js 文件吗?

标签: javascript mysql node.js forms express


【解决方案1】:

从客户端发送正确的值。

并确保将您的 body-parser 代码放在服务器主文件中的所有路由之上。

var bodyParser = require('body-parser');

var app = express();
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: false }));

【讨论】:

  • 我已经有这个工作了,或者我需要它在 user.js 文件中而不是 server.js 文件中
猜你喜欢
  • 2020-12-15
  • 2015-08-13
  • 2014-07-01
  • 2014-07-26
  • 2018-08-03
  • 2020-07-15
  • 2015-02-02
  • 2018-02-24
  • 2016-05-19
相关资源
最近更新 更多