Axios React上传jpg

问题描述

我有用ImagePicker拍摄的照片文件,我需要使用axios将其上传到服务器,并且需要将此照片的发送类型作为字符串发送。

我的代码在这里

const axiosMultipart = axios.create({
  timeout: 3000,baseURL: BASE_URL,headers: {
    'Content-Type': 'multipart/form-data'
  }
})
uploadDocs(token,type,photo){
    let data = new FormData();
    data.append('photo',photo);
    data.append('type',type);

    return axiosMultipart
    .post(
      `uploadDocs`,{data},{
        headers: {
          Authorization: token,},}
    )
    .then((response) => {
      return response.data;
    })
    .catch((error) => console.log("uploadDocs: " + error));
  };

服务器响应为error_code 400 怎么了 我也有工作要求的PHP代码 {{3}}

解决方法

尝试以下代码,

    var photo = {
        uri: file,type: 'image/jpeg',name: 'photo.jpg',};


var FormData = require('form-data');
var form = new FormData();
form.append('photo',photo);
form.append('filetype',filetype);


axios({
    method: 'post',headers: {
        "Accept": "application/json",'Content-Type': 'multipart/form-data',"Authorization": authData

    },data: form,url: `${base_url}`,}).then(async (result) => {
    console.log("uploadFile detail Response===>",result);

   
}).catch((error) => {
    console.log("uploadFile detail error===>",error);

    callback({ status: false,result: error })
});