Запрос Symfony остается пустым при отправке файла из JavaScript - PullRequest
0 голосов
/ 19 ноября 2018

Я пытаюсь отправить файл, используя React.js и пакет dropzone.Я могу отправить файл, но запрос в моем контроллере php не содержит файл.

Вот код:

Javascript:

handleDrop = files => {
  // const uploaders = files.map(file => {
      const formData = new FormData();
      formData.append("file", files[0], 'picture');

      return axios.post("http://localhost:8000/upload", formData, {
          headers: {
              'accept': 'application/json',
              'Content-Type': `multipart/form-data; boundary=${formData._boundary}`,
          }})
          .then(response => {
              const data = response.data;
              console.log(data);
          })
  // })
};

render() {
    return (
        <div>
            <NavigationBar>
                displaySearchFields={'none'}
            </NavigationBar>
            <Dropzone onDrop={this.handleDrop}>
                <div>Try dropping some files here, or click to select files to upload.</div>
            </Dropzone>
        </div>
    );
}

Php:

/**
 * @Route("/upload", methods={"POST", "OPTIONS"}, name="upload")
 */
public function uploadImageToDatabase(Request $request)
{
    $data = $request->files->get("file");

    $this->saveImage($data);

    return new JsonResponse($request);
}

public function saveImage($image){
    $fp = fopen("D:\Temp\imageToEncode.png", "w");
    fwrite($fp, $image);
    fclose($fp);
}

Кто-нибудь знает, что я делаю не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...