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

Express中req.body存在字段但访问返回undefined是什么原因?

问题根源

JavaScript 对象的属性名是严格区分大小写、严格匹配字符的,你取不到对应值的核心原因是解构时使用的属性名和 req.body 中实际存在的属性名拼写不匹配,具体存在两处错误:

  • 第一处:req.body 中存储表单数据的属性名为 formData(字母 D 大写),但你解构时写的是全小写的 formdata,二者不匹配导致取值为 undefined
  • 第二处:req.body 中存储配额更新数组的属性名为 updatedQuota(前缀是 updated 带字母 d),但你解构时写的是 updateQuota(没有字母 d),字符不匹配导致取值为 undefined

修正方案

把解构语句的属性名和实际返回的字段对齐即可:

const { organizationId, formData, updatedItems, updatedQuota } = req.body;

如果你的项目是 TypeScript 开发,建议提前为 req.body 定义明确的类型约束,编译阶段就能自动识别拼写错误,避免运行时才排查出这类问题。


内容的提问来源于stack exchange,提问作者Kid_Learning_C

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 21:45:06