问题描述
我正在尝试通过axios将图像上传到API,但是我遇到问题,服务器完全不发送响应,这是代码
图像选择器
const showImage = () => {
ImagePicker.showImagePicker(options,(response) => {
if (response.didCancel) {
setIsImageEdit(false);
} else if (response.error) {
} else if (response.customButton) {
} else {
const source = response;
setUserImage({
fileLink: source.uri,});
setUploadImageFile(source.uri);
}
});
};
setActivity(true);
const token = await getToken();
if (uploadImageFile) {
const uploadUri =
Platform.OS === 'ios'
? uploadImageFile.replace('file://','')
: uploadImageFile;
const data = new FormData();
data.append('file',{
uri: uploadImageFile,name: 'file',type: 'image/jpg',});
console.log(uploadImageFile);
console.log(data);
Axios.post('http://capi.beebl.io/user/image',data,{
headers: {
Authorization: token,'Content-Type': 'multipart/form-data',},})
.then((res) => {
console.log(res);
setActivity(false);
})
.catch((err) => {
console.log(err);
setActivity(false);
});
解决方法
尝试而不是uploadImageFile.replace('file://','')
:uploadImageFile.replace('file:','')