2

我知道有成千上万这样的问题,但没有一个解决方案适合我:

  1. 更改为 Fetch Api
  2. 在 formData 中使用格式 {uri: ..., type: ..., 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 中。

有什么想法?谢谢

4

1 回答 1

1

我在 Axios 上遇到了 6 天的同样问题:D,我得到的 Multer 没有问题。但在你留下的代码中不data应该是. 如果它不能解决您的问题,请检查它我强烈建议您使用https://github.com/joltup/rn-fetch-blob,因为 Axios 包有一些问题,您也可以从 github 问题中检查它。对我来说使用了我希望它帮助的工作formDataformData._partsRNFetchBlob

于 2020-05-26T07:35:54.220 回答