类型错误:当我按下提交按钮进行发布请求时,无法读取未定义的属性(读取"名称")



当我单击提交以发布MongoDB上的条目时,它给了我这个错误MongoDB也连接到服务器。

这是我的路由器文件

const express = require('express');
const Club  = require('../models/club')
const Router = express.Router();

Router.get('/', (eror,res)=>{
res.render('index')
})
Router.post('/form', (req,res)=>{
const name = req.body.name;
console.log(name);
})
module.exports = Router;

这是我的表格

<form action="/form" method="post">
<input type="text" name="name" placeholder="Add an Entry">
<input type="submit" value="Submit">
</form>

我什么都试过了,但都不行

我们必须添加中间件来解析请求体。在你的例子中:

Router.use(express.urlencoded({ extended: true }))

根据您的Express版本,您可能需要在处理程序之前使用bodyParser中间件

const express = require('express');
var bodyParser = require('body-parser')
const app = express();
app.use(bodyParser.urlencoded());
...

在你的app.js文件中,你需要添加一个中间件来解析数据,你不需要在当前的express版本中安装bodyParser,他们已经集成了这个功能,你只需要添加这个:

const express = require('express');
const app = express();
...
app.use(express.urlencoded({ extended: true }));  // this line for your case

相关内容

  • 没有找到相关文章

最新更新