反应原生提取文件上传错误
问题描述:
我正在尝试使用抓取将图像文件上传到我的服务器。这里是我的代码,我使用:反应原生提取文件上传错误
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
按钮,我得到一个错误说:
我不知道我做错了什么,或者如果这是上传照片到服务器的正确方法。
答
是的,它可能只上传一个图像与获取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: {
'Accept': 'application/json',
'Content-Type': 'multipart/form-data;'
},
如果您不能使用它:我已经与这个库运气。 [RN Fetch Blob](https://github.com/wkh237/react-native-fetch-blob)。 –
我喜欢那个库更好,但我也得到了一个错误:http://stackoverflow.com/questions/43835848/react-native-fetch-blob-undefined-is-not-an-object-evaluating- rnfetchblob-DO – pudility