在这个问题中,您遇到了从包含某些数据的ejs文件向express服务器发送post请求时,req.body返回未定义的问题。这通常是由于未正确配置和使用中间件导致的。以下是一些可能的原因和解决方法:
const express = require('express');
const bodyParser = require('body-parser');
const app = express();
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
application/x-www-form-urlencoded
或application/json
。例如,使用axios发送POST请求的示例代码如下:const axios = require('axios');
axios.post('/your-endpoint', {
data: 'your-data'
})
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});
<form action="/your-endpoint" method="POST">
<input type="text" name="data" value="your-data">
<button type="submit">Submit</button>
</form>
req.body
来获取请求体中的数据。例如,处理POST请求的示例代码如下:app.post('/your-endpoint', (req, res) => {
console.log(req.body); // 输出请求体数据
res.send('POST request received');
});
通过检查以上几个方面,您应该能够解决req.body返回未定义的问题,并成功从包含某些数据的ejs文件向express服务器发送POST请求。请注意,以上示例代码中的端点和数据仅供参考,您需要根据您的实际情况进行相应的调整。
没有搜到相关的沙龙
领取专属 10元无门槛券
手把手带您无忧上云