Javascript 在节点js的路由中发布表单数据

Javascript 在节点js的路由中发布表单数据,javascript,php,node.js,Javascript,Php,Node.js,当我将表单数据发布到路由时,得到一个未定义的参数错误。无法将表单参数发送到路由文件。请帮帮我。这是我的代码和文件名 获取错误 TypeError:无法读取未定义的属性“username” node.js var http = require('http'); var mysql = require('mysql'); var express = require('express'); var app = express(); var fs = require('fs'); var bodyPar

当我将表单数据发布到路由时,得到一个未定义的参数错误。无法将表单参数发送到路由文件。请帮帮我。这是我的代码和文件名

获取错误

TypeError:无法读取未定义的属性“username”

node.js

var http = require('http');
var mysql = require('mysql');
var express = require('express');
var app = express();
var fs = require('fs');
var bodyParser = require('body-parser');

app.route('/').get(function(req,res) {      
    fs.readFile('./html/registers.html',function(err,data) {    
        res.writeHead(200,{'Content_type':'text/html'});
        res.write(data);
        res.end();
    });
});    

app.post('/formData', function(req, res) {
    var username = req.body.username;
    var password = req.body.password;

    console.log("post received: %s %s", username, password);
});
<form action="formData" enctype="multipart/form-data" method="post">
    <div class="form-group">
        <label for="username">Username:</label>
        <input type="text" class="form-control" id="username" placeholder="Enter username" name="username">
    </div>
    <div class="form-group">
        <label for="pwd">Password:</label>
        <input type="password" class="form-control" id="password" placeholder="Enter password" name="password">
    </div>
    <div class="checkbox">
        <label><input type="checkbox" name="remember"> Remember me</label>
    </div>
    <button type="submit" class="btn btn-default">Submit</button>
</form>
register.js

var http = require('http');
var mysql = require('mysql');
var express = require('express');
var app = express();
var fs = require('fs');
var bodyParser = require('body-parser');

app.route('/').get(function(req,res) {      
    fs.readFile('./html/registers.html',function(err,data) {    
        res.writeHead(200,{'Content_type':'text/html'});
        res.write(data);
        res.end();
    });
});    

app.post('/formData', function(req, res) {
    var username = req.body.username;
    var password = req.body.password;

    console.log("post received: %s %s", username, password);
});
<form action="formData" enctype="multipart/form-data" method="post">
    <div class="form-group">
        <label for="username">Username:</label>
        <input type="text" class="form-control" id="username" placeholder="Enter username" name="username">
    </div>
    <div class="form-group">
        <label for="pwd">Password:</label>
        <input type="password" class="form-control" id="password" placeholder="Enter password" name="password">
    </div>
    <div class="checkbox">
        <label><input type="checkbox" name="remember"> Remember me</label>
    </div>
    <button type="submit" class="btn btn-default">Submit</button>
</form>

用户名:
密码:
记得我吗
提交

请更换以下部件

<form action="formData" enctype="multipart/form-data" method="post">

您是否有
app.use(bodyParser.json())
服务器代码中的这一行?当我添加“app.use(bodyParser.json());”时,表单无法发布数据。添加代码后,我收到错误“post received:undefined undefined”。请删除enctype并检查