API无法接收AXIOS POST请求数据的问题求助
问题分析与解决方案
核心问题
- 服务端未配置JSON请求体解析中间件:Express框架默认不会自动解析JSON格式的请求体,导致无法读取客户端发送的数据。
- 服务端错误读取请求数据:POST请求的JSON数据需从
req.body获取,而非代码中的req.data。
修改后的服务端代码
const express = require('express'); const app = express(); // 关键:添加JSON解析中间件,必须放在路由定义之前 app.use(express.json()); app.route('/api/resource') .post(async (req, res) => { // 从req.body获取客户端发送的JSON数据 res.send(req.body) })
补充说明
express.json()中间件负责解析Content-Type为application/json的请求体,解析后的数据会存入req.body对象。- 务必确保该中间件在所有路由注册前启用,否则路由无法访问解析后的请求数据。
内容的提问来源于stack exchange,提问作者Matthew Clifford
相关产品推荐
相关产品推荐

