Как отправить файл через Axios в Laravel

Мне нужно отправить файл с клиента на сервер через Axios.

Вот мой код Vuejs:

methods: {
'successUpload': function (file) {
const config = { headers: { 'Content-Type': 'multipart/form-data' } };
axios.post('/Upload/File',file, config).then(function (response) {
console.log(response.data);
});
}
}

А вот мой код Laravel для обработки отправленного файла:

public function uploadFile(Request $request)
{
if($request->hasFile('file'))
return "It's a File";

return "No! It's not a File";
}

Но это всегда возвращается No It's not a File,

Любая помощь будет принята с благодарностью.

6

Решение

Вы должны создать объект FormData и добавить файл изображения.

methods: {
'successUpload': function (file) {

let data = new FormData();
data.append('file', document.getElementById('file').files[0]);

axios.post('/Upload/File',data).then(function (response) {
console.log(response.data);
});
}
}

Примером является Вот.

Дай мне знать, если это работает.

12

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]