上传文件"/>
无法通过Multer,React Native和Axios上传文件
我知道有成千上万个这样的问题,但是没有一种解决方案适合我:
- 更改为获取Api
- 在formData中使用格式{uri:...,类型:...,name:...}
[我还注意到,我不能直接在“ data” axios的属性中发送formData(使用Axios({...})时,因为formData对象的属性调用为“ ._parts”,所以我必须做的:
let formData = new FormData()
formData('image', {uri: imagePicker.uri, name: 'some_name.jpeg', type: 'image/jpeg'})
formData('data', {name: 'Andrea'})
let xmlHttp = await Axios({
method: 'POST',
url: `url...`,
data: formData._parts,
headers: {
Authorization: `Bearer ${_token}`,
'Content-Type': 'multipart/form-data',
},
} ).catch(error => {
throw error
});
然后,在Node中,我得到了:
req.body -> [Object: null prototype] {}
req.file -> undefined
upload.single(“ image”),在router.post和multerS3中。
有些主意?谢谢
回答如下:我在Axios遇到了同样的问题6天:D,我得到的Multer没有问题。但是您在代码中留下的data
应该是formData
,而不是formData._parts
。只是检查它是否不能解决您的问题,我强烈建议您使用https://github/joltup/rn-fetch-blob,因为Axios软件包出现了一些问题,您也可以从github问题中进行检查。对我来说,使用RNFetchBlob
可以完成这项工作,希望对您有所帮助
更多推荐
无法通过Multer,React Native和Axios上传文件
发布评论