EJS表单GET请求无法获取name参数,显示undefined(无需bodyparser)
问题解决:GET请求无法获取表单输入的用户名
GET表单提交的参数会以查询字符串的形式附加在URL后面,而非存入请求体(req.body)中,这就是你用req.body.name得到undefined的原因。
直接修改entry.js中的代码,将获取参数的方式从req.body改为req.query即可,无需额外中间件:
router.get("/entry", async(req, res) => { const allEntries = await dailyUsage.find(); const {name} = req.query; // 替换req.body为req.query console.log(name); // ... });
Express框架默认已经完成了URL查询字符串的解析,直接通过req.query就能访问到表单提交的name参数。
内容的提问来源于stack exchange,提问作者John Johnson
相关产品推荐
相关产品推荐

