月度归档: <span>2023 年 2 月</span>
月度归档: 2023 年 2 月

aixos并配合form-data模块

在nodejs上使用axios发送post请求时,使用到了一个form-data包,作用就是构造一个类似于前端的表单,项目中是用来上传文件,殊不知遇到一个axios的问题,这个问题之前在前端页面上没有遇到过,我猜测原因可能是前端上传文件时,表单是网页自带的,可能已经给我们做了这个工作(这个只是猜想,没有验证)

看一下遇到的问题,post报错,报错内容是

Error [ERR_FR_MAX_BODY_LENGTH_EXCEEDED]: Request body larger than maxBodyLength limit

经查,只需要在axios中设置两个参数即可:

maxContentLength: Infinity,maxBodyLength: Infinity,

另外,为了安全起见,在headers中还增加了表单具体大小,完整配置如下

axios({
url:ossUrl,
method: 'post',
maxContentLength: Infinity,
maxBodyLength: Infinity,
headers:{
'token':token,
'content-type': 'multipart/form-data;boundary=' + formData.getBoundary()
},
data:formData
})

只要加了这个Infinity,以后多大的文件都能传了。