HTML Форма не отправляет данные на Laravel сервер - PullRequest
0 голосов
/ 30 мая 2020

Я пытаюсь загрузить файл с помощью формы и Laravel. Моя форма:

<form action="testUpload" nctype='multipart/form-data' method='POST'>
  <input type="hidden" name="_Token" value="{{ csrf_token() }}">
  <div class="col-md-12" style="margin-top: 25px">
     <div class="input-group mb-3">
        <div class="custom-file">
           <input type="file" class="custom-file-input" id="inputGroupFile01">
           <label class="custom-file-label" id="uploadFile" for="inputGroupFile01">Choose file</label>
       </div>
    </div>
    <input type="submit" class="btn btn-success" />
 </div>
</form>

Мой маршрут выглядит следующим образом:

Route::group(['middleware' => 'web'], function(){
    Route::post('/testUpload', 'uploadController@upload');
});

И мой контроллер:

public function upload(){
    $data = Request::all();
    return $data;
}

В настоящее время я получаю ошибку 419 Page Expired при нажатии на кнопку. Что мне не хватает? Я пробовал очистить весь кеш маршрута

1 Ответ

1 голос
/ 30 мая 2020

В вашей форме отсутствует поле CSRF. Он должен быть на всех формах. Вы можете легко добавить @csrf между <form> и </form>

Примечание: nctype='multipart/form-data' должно быть enctype='multipart/form-data'

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