需要统一给页面的所有请求设置一个统一的头部,但是发现使用
axios.defaults.headers.common[xxx]
设置无效,但在 axios.create
或者请求拦截器中使用没有问题。
经查,我这边配置 axios.header
是在 axios.create
之后,axios.create
已经生成了一个新的示例,项目中使用的都是新实例,所以配置了也不会在新实例中生效。
解决方法:
配置对象换成新实例,如 request.defaults.headers.common[xxx]
(注:网上查找资料的时候还遇到有人出现 get
请求头部被允许的情况,因为源码中判断了为 get
请求无 data
的情况下则删除请求头,改为 post
方法请求或者设置 data
不为空即可。但可能出现这个问题的版本与本次出现设置问题的版本不同,此次查看并没有这个限制,此次版本:0.21.4)