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

React Native POST请求异常:提示缺少必填字段box_id求解决

解决React Native POST FormData提示缺失必填字段的问题

针对你遇到的后端返回Request is missing required form field 'box_id'错误,结合Postman请求正常的情况,可按以下步骤排查修复:

1. 修正fetch请求头的拼写与配置错误

你的代码中存在两个关键问题:

  • 请求头属性名拼写错误:header应为复数headers
  • 手动设置Content-Type: multipart/form-data会覆盖FormData自动生成的带boundary的请求头,导致后端无法正确解析表单数据

修改后的fetch请求配置:

const requestOptions = {
  method: "POST",
  body: data,
  // 移除手动设置的Content-Type,由FormData自动生成正确的请求头
  // headers: { "Content-Type": "multipart/form-data" },
};

2. 验证FormData的字段是否正确添加

在发送请求前,打印FormData的字段值,确认box_id已被正确添加:

console.log(data.get('box_id')); // 应输出8c457cf6-e5d3-5549-9edf-2ad999f4f870

3. 调整axios请求的配置(若使用axios)

使用axios时同样不要手动设置Content-Type,axios会自动识别FormData并生成正确的请求头:

axios.post(baseURl, data)
  .then(response => console.log(response.data))
  .catch(error => console.log(error));

4. 排查React Native环境或拦截器影响

  • 若使用旧版本React Native,可能存在FormData兼容性问题,尝试升级到稳定版本
  • 检查是否有调试工具(如Charles、Flipper)或第三方请求拦截器修改了请求内容,暂时关闭这类工具测试

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.23 10:02:11