Вот решил выучить Vue.js и Laravel. Но застрял на ошибке 405 Method not Allowed.
Пытаюсь через axios.post(...) отправить картинку, но в ответ та самая ошибка. Смотрел решения этой проблемы, почти везде советуют менять первый аргумент в axios.post(...), но мне такое решение ошибку не исправляет. Теперь сам прошу помощи. Знаю, что скорее всего решение банально. Буду очень благодарен.
Вот web.php:
Route::get('/', 'FilesUploadController@index');
Route::post('upload', 'FilesUploadController@upload');
Вот FilesUploadController.php:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class FilesUploadController extends Controller
{
public function index() {
return view('welcome');
}
public function upload( Request $request) {
return json_encode($request->all());
}
}
Вот Компонент Vue.js:
<template>
<div class="upload-component">
<div class="progress-bar-container">
<div class="progress-bar" role="progressbar"></div>
</div>
<input type="file" name="files" multiple="" @change="upload">
<div class="lists">
<div class="list-container">
<ul class="filesOrder">
<li></li>
</ul>
</div>
<div class="list-container">
<ul class="filesUploaded">
<li></li>
</ul>
</div>
</div>
</div>
</template>
<script>
export default {
methods: {
upload: function () {
let file = new FormData();
file.append('file', event.target.files);
console.log(file);
axios.post('/upload', file)
.then (
(response) => { console.log(response) },
(error) => { console.log(error) }
);
}
}
}
</script>
Вот ошибка:
Route::post('/upload', 'FilesUploadController@upload');
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости