快速路由器找不到

我使用如下的快递生成器创build了一个快速项目

express project_name 

 npm install 

这是我的app.js

 var express = require('express'); var path = require('path'); var favicon = require('serve-favicon'); var logger = require('morgan'); var cookieParser = require('cookie-parser'); var bodyParser = require('body-parser'); var routes = require('./routes/index'); var users = require('./routes/users'); var app = express(); // view engine setup app.set('views', path.join(__dirname, 'views')); app.set('view engine', 'jade'); // uncomment after placing your favicon in /public //app.use(favicon(__dirname + '/public/favicon.ico')); app.use(logger('dev')); app.use(bodyParser.json()); app.use(bodyParser.urlencoded({ extended: false })); app.use(cookieParser()); app.use(express.static(path.join(__dirname, 'public'))); app.use('/', routes); app.use('/users', users); // catch 404 and forward to error handler app.use(function(req, res, next) { var err = new Error('Not Found'); err.status = 404; next(err); }); // error handlers // development error handler // will print stacktrace if (app.get('env') === 'development') { app.use(function(err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: err }); }); } // production error handler // no stacktraces leaked to user app.use(function(err, req, res, next) { res.status(err.status || 500); res.render('error', { message: err.message, error: {} }); }); module.exports = app; 

这些是我的路线

 var express = require('express'); var router = express.Router(); /* GET home page. */ router.get('/', function(req, res, next) { res.render('index', { title: 'iDanG Management' }); }); module.exports = router; 

我有以下index.jade

 extends layout block content div.container div.row form(id='myform' action='' method='post') p Name: input(type='text' name='name') p E-Mail: input(type='text' name='email') input(type='submit' value='add') table(class='table table-hover' id='user_table') thead tr th Name th Email tbody script. $(document).ready( function() { $('#user_table').dataTable({ "pagingType": "simple_numbers", "ordering": false }); $('#myform').ajaxForm({ beforeSubmit: function (formData, jqForm, options) { $('#table').DataTable().row.add([formData[0].value, formData[1].value]).draw(); return false; } }); }); 

并遵循layout.jade

 doctype html html head title= title script(src="/javascripts/jquery-1.11.2.min.js") script(src="/javascripts/jquery.form.js") script(src="/javascripts/jquery.dataTables.min.js") link(rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css") link(rel="stylesheet" href="/javascripts/jquery.dataTables.min.css") body block content 

当我尝试提交该表单时,我收到以下错误:

 Error: Not Found at app.use.res.render.message (/home/ubuntu/iDanG_Management/app.js:30:13) at Layer.handle [as handle_request] (/home/ubuntu/iDanG_Management/node_modules/express/lib/router/layer.js:82:5) at trim_prefix (/home/ubuntu/iDanG_Management/node_modules/express/lib/router/index.js:302:13) at /home/ubuntu/iDanG_Management/node_modules/express/lib/router/index.js:270:7 at Function.proto.process_params (/home/ubuntu/iDanG_Management/node_modules/express/lib/router/index.js:321:12) at next (/home/ubuntu/iDanG_Management/node_modules/express/lib/router/index.js:261:10) at /home/ubuntu/iDanG_Management/node_modules/express/lib/router/index.js:603:15 at next (/home/ubuntu/iDanG_Management/node_modules/express/lib/router/index.js:246:14) at Function.proto.handle (/home/ubuntu/iDanG_Management/node_modules/express/lib/router/index.js:166:3) at router (/home/ubuntu/iDanG_Management/node_modules/express/lib/router/index.js:35:12) 

对于我使用这个的forms

你有什么build议,我可以解决这个问题? 帮助非常感谢!

看起来你正在做一个post请求,你的路由没有post handler。

可能是邮政添加路线:

 router.post('/', function(req, res, next) { //do something and return data here? });