首页 > 解决方案 > req.body.username 未定义

问题描述

在 express js 中,我使用正文解析器来获取用户名。当我尝试获取用户名时,它返回未定义。谁能帮我?

app.use(session({
 cookieName: 'session',
 secret: "Shh_It's_a_secret",
 duration: 100000 * 100000
}));
app.use(bodyParser.urlencoded({ extended: true }));
app.get('/home', (req, res) => {
if(req.body.username){
 res.send('Invalid Username, Press The Back Button To Try Again');
} else if (!req.body.username) {
  app.use(express.static(__dirname + '/NerdFestProjectHomepage.html'));
  res.sendfile('NerdFestProjectHomepage.html');
  console.log(req.body.username);
}
})

当我尝试获取 req.body.username 时,它​​返回未定义。

标签: node.jsexpressbody-parser

解决方案


这是一个 GET 请求。明确地说,不可能使用 GET 请求发送“正文”。

将 GET 更改为 POST 请求:

app.post('/home', cb );

并在视图中使用:

<form action="/home" method="POST"></form>

推荐阅读