You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Express(Node.js)中POST请求req.body为空的问题排查

Express中POST请求req.body为空的原因及解决方法

错误原因

你客户端请求里的mode: 'no-cors'是问题根源。这个模式下,浏览器会强制将你设置的Content-Type: application/json替换为text/plain,而服务端的express.json()中间件仅解析Content-Type为application/json的请求,因此无法识别请求体,导致req.body为空。

解决方法

直接删除mode: 'no-cors'配置即可。你的请求属于同域请求(客户端和服务端均为localhost:3000),浏览器默认允许同域请求,无需开启no-cors模式。修改后的客户端代码如下:

const data ={agent: 41}
const options = {
method: 'POST',
credentials: 'same-origin',
headers: {
'Content-Type': 'application/json'
},
body: JSON.stringify(data)
};

fetch('http://localhost:3000/post', options);

修改完成后,服务端就能正常解析请求体,终端会打印出期望的{ agent: 41 }。

内容的提问来源于stack exchange,提问作者Bear the death bringer

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 02:01:11