繁体   English   中英

无法在node.js express中发布表单

[英]cannot post form in node.js express

我是node.js的初学者。

有一个示例表单,我正在尝试在数据库中插入值

这是我的测试页-

<form action="/create" method="POST" class="form-horizontal"  enctype="application/x-www-form-urlencoded">
     <input type="text" id="username_input" name="username">
     <input type="text" id="password_input" name="password">
     <input type="submit" name="Submit" value="Insert" class="btn">
</form>

尝试发布-

我创建了test.js文件,并在其中编写了post方法-

exports.list = function (req, res) {
    req.getConnection(function (err, connection) {
        console.log(con)
        app.post("/create", function (req, res) {
            var username = req.body.username,
     password = req.body.password;
            console.log(username);
            console.log(password);

            connection.query('INSERT INTO users(email,password) VALUES', (username, password), function (err, rows) {

                if (error) {

                    console.log(error.message);
                } else {
                    console.log('succes');

                }

            });

        });
    });
}

但这没有用。 我也尝试在主server.js文件中编写post方法-

app.post("/create", function (req, res) {
        var username = req.body.username,
 password = req.body.password;
        console.log(username);
        console.log(password);

        connection.query('INSERT INTO users(email,password) VALUES', (username, password), function (err, rows) {

            if (error) {

                console.log(error.message);
            } else {
                console.log('succes');

            }

        });

    });

但这也不起作用。

我正在遵循server.js文件中的当前设置-

/**
* Module dependencies.
*/

var express = require('express')
  , routes = require('./routes')
  , index_form = require('./routes/index_form')
  , user = require('./routes/user')
  , test = require('./routes/test')
  , mysql = require('mysql')
  , http = require('http')
  , path = require('path')
  , mongoose = require('mongoose');

var connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'pass@123'
});

var app =express();

app.configure(function () {
    app.set('port', process.env.PORT || 3000);
    app.set('views', __dirname + '/views');
    app.set('view engine', 'ejs');
    app.use(express.favicon());
    app.use(express.logger('dev'));
    app.use(express.bodyParser());
    app.use(express.methodOverride());
    app.use(app.router);
    app.use(express.static(path.join(__dirname, 'public')));
});

app.configure('development', function () {
    app.use(express.errorHandler());
});

app.get('/', routes.index);
app.get('/test', test.test);
app.get('/users', user.list);
app.get('/index_form', index_form.index_form)

http.createServer(app).listen(app.get('port'), function () {
    console.log("Express server listening on port " + app.get('port'));
});

请全程指导我,如何使用node.js进行表单发布?

您是否尝试放置app.post("/create", test.test); GET路由后进入当前的server.js吗? 因为我在这里看到的,您当前的server.js没有任何POST请求。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM