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

Axios PUT请求headers配置失败原因及参数位置疑问

Axios PUT请求添加headers的问题解析

第一种写法失败的原因

Axios的put方法参数规则是:put(url[, data[, config]]),三个参数分别对应:

  1. 请求URL
  2. 请求体数据(PUT/PATCH这类请求用来提交的主体内容)
  3. 配置对象(包含headers、params等请求配置项)

你第一种写法里,把{ headers: {...} }放在了第二个参数的位置,Axios会把这个对象当成请求体数据发送给后端,而不是解析成请求配置,自然headers不会生效。

第二种写法生效的逻辑

第二个参数传空对象{},是因为PUT请求如果不需要提交请求体,就用空对象占位,让Axios识别第三个参数为配置对象,这样里面的headers才会被正确添加到请求头里。

配置对象(第三个参数)支持的常用参数

除了你知道的params(URL查询参数),还有这些常用配置:

  • headers:请求头配置,比如Authorization、Content-Type等
  • timeout:设置请求超时时间,单位毫秒,比如timeout: 5000表示5秒超时
  • withCredentials:跨域请求时是否携带Cookie,布尔值,比如withCredentials: true
  • responseType:指定响应数据类型,可选值有'json'(默认)、'blob'、'text'等
  • validateStatus:自定义判断请求是否成功的状态码规则,比如validateStatus: status => status >= 200 && status < 400
  • transformRequest:请求发送前对数据做转换的函数,比如处理请求体格式
  • transformResponse:接收响应后对数据做转换的函数,比如统一处理响应结构

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 22:00:54