我用axios上传一张图片到strapi,但是响应是500错误,但是在Postman中请求是200
*** Postman ***
AXIOS代码
let bodyFormData = new FormData();
bodyFormData.append('files', this.state.avatar, this.state.avatar.name)
bodyFormData.append('ref', 'user')
bodyFormData.append('refId', getId())
bodyFormData.append('field', 'avatar')
bodyFormData.append('source', 'users-permmissions')
axios({
method: 'post',
url: `${strapi}/upload`,
headers: {
'Content-Type': 'multipart/form-data',
'Authorization': `Bearer ${withToken()}`,
},
data: bodyFormData,
}).then(res=>console.log(res.data)).catch(err=>{console.log(err.response.data.message)})
这到底是什么问题
这是strapi用户模型的一部分
{
"avatar": {
"model": "file",
"via": "related",
"plugin": "upload",
"required": false
}
}
2条答案
按热度按时间fslejnso1#
解决办法是把Axios扔进垃圾桶。我为这个问题挣扎了一天,这一天我再也回不来了。在https://github.com/axios/axios/issues/318上有一个很长的、有几年历史的帖子,人们抱怨无法让多部分表单上传与Axios一起工作。
我切换到
request-promise
模块,并使用以下简单代码在几分钟内使其工作:好好享受吧!!
qv7cva1a2#