FromData格式提交接口时入参被转成JSON格式问题
本地上传文件后通过事件提交文件,一般先通过前端组件生成文本流,在通过接口提交文本流,提交文本流一般使用FormData的入参形式传入,接口请求头也默认"Content-Type": “multipart/form-data”,但是某些场景统一设置了请求头,使得请求接口时并不会自动转换,则上传的接口入参被转为了JSON格式
入参
const formData = new FormData()
formData.append('file', this.file)
uploadApi(formData).then((res) => {
...
})
转换前请求头
'Content-Type': 'application/json'
转换后
headers: { "Content-Type": "multipart/form-data" }
这样在请求时单独设置请求头
前提是在请求组件中要解构,将外来的header解构到公共组件中设置的header对象中,这样才能把值传进去
config.headers = {
'Content-Type': 'application/json',
// 其他设置 。。。。。。
...config.headers
}