React Native 获取文件上传错误

React Native Fetch File Upload Error

我正在尝试使用 fetch 将图像文件上传到我的服务器。这是我正在使用的代码:

var formData = new FormData();
    formData.append('photo', {uri: './tempImageStore/image.jpg', name: 'photo', type: 'image/jpg'});

       <Button
         onPress={() => fetch('http://localhost:8000/upload', {
           method: 'POST',
           headers: {
             "Accept": "multipart/form-data",
             "Content-Type": "multipart/form-data"
           },
             body: formData
           })
         }
         title={'Upload File'}
       />

然而,当我 运行 我的应用程序并按下 Upload File 按钮时,我收到一条错误消息:

我不确定我做错了什么,或者这是否是将照片上传到服务器的正确方法。

是的,是否可以仅使用 fetch 上传图片 API。

我遇到了同样的问题,我用这个解决了:

首先,请确保删除 URL 开头的 file//,您可以这样做

const fileURL = "file:///Users/juordergonzalezquinonez/Library/Developer/CoreSimulator/Devices/046E9C13-5D5D-4463-82DD-256501874EBF/data/Containers/Data/Application/839C5E04-46BB-4F9B-BF53-3FDFF639F340/tmp/react-native-image-crop-picker/C07E6B9E-3113-41C2-AD80-A768DF33C263.jpg";
const cleanURL = fileURL.replace("file://", "");

然后在获取请求中,确保你的 headers 必须是这样的:

headers: {
  'Accept': 'application/json',
  'Content-Type': 'multipart/form-data;'
},