将图像文件从react-native上传到php服务器

时间:2017-08-11 18:02:15

标签: javascript php reactjs file-upload react-native

我正在尝试将反应原生的图像文件上传到我的php服务器。我的问题是如何将文件对象发布到php。

我的javascript代码:

 storePicture(){
    const file = {
     uri: this.state.selected[0].uri,
     name: this.state.selected[0].filename,
     type: 'image/jpg'
    }


   fetch('http://localhost:8888/s3/index.php', {
     method: 'POST',
     body: JSON.stringify({
       file: file
     })
   })

   .then((response) => response.json())
   .then((responseJson) => {
     console.log(responseJson.status)

   })
}

我的PHP代码:

$data_back = json_decode(file_get_contents('php://input'));

$file = $data_back->{"file"};

1 个答案:

答案 0 :(得分:0)

你不能像那样进行字符串化。尝试创建一个FormData对象,将文件附加到它并将FormData添加到body。

let formData = new FormData();
formData.append("image", this.state.fileInputElement.files[0]);

fetch('http://localhost:8888/s3/index.php', {
 method: 'POST',
 body: formData
})