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

如何使用Axios提交表单数据 解决调用正常接口返回403错误问题

问题原因&修复方案

你遇到的403错误核心是手动指定了multipart/form-data请求头但缺少boundary分隔符参数,导致后端无法正确解析FormData,触发校验失败。
使用FormData作为请求体时不需要手动设置Content-Type,浏览器会自动生成携带正确boundary的请求头,修改代码如下:

const SendData = (event) => {
    event.preventDefault();
    let respuestasUSer = new FormData();
    respuestasUSer.set('curso', state.curso)
    respuestasUSer.set('nombre', state.nombre)
    respuestasUSer.set('q1', state.Pregunta1)
    respuestasUSer.set('q2', state.Pregunta2)
    respuestasUSer.set('q3', state.Pregunta3)
    respuestasUSer.set('q4', state.Pregunta4)
    respuestasUSer.set('q5', state.Pregunta5)
    respuestasUSer.set('q6', state.Pregunta6)
    respuestasUSer.set('q7', state.Pregunta7)
    respuestasUSer.set('q8', state.Pregunta8)
    axios({
        method: "post",
        url: "https://covid.cit0.com/guardar/encuesta/",
        data: respuestasUSer,
        // 移除手动配置的Content-Type,由浏览器自动生成
      })
        .then(function (response) {
          console.log(response);
        })
        .catch(function (response) {
          console.log(response);
        });   
}

异常排查

如果修改后仍然报错,可按照以下步骤定位:

  • 打开浏览器控制台网络面板,对比当前请求和API测试工具的请求头差异,补全缺失的校验字段,比如X-CSRFToken、Authorization等
  • 如果请求需要携带Cookie凭证,可在axios配置中添加withCredentials: true参数
  • 确认当前站点域名已在后端接口的跨域访问白名单内

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 09:45:01