У меня проблема.Я хочу загрузить img, используя ajaxupload, но я не могу этого сделать, я всегда получаю исключение POST 419 (неизвестный статус).Я делаю все с использованием документации, но я понятия не имею.
Итак, мой маршрут:
Route::post('/products/image','ProductController@image');
В основных макетах у меня есть:
<meta name="csrf-token" content="{{ csrf_token() }}">
Мой form.blade.php
<form action="{{route('')}}" method="post">
@csrf
<div class="box box-danger box-solid file-upload">
<div class="box-body">
<div id="single" class="btn btn-success"
data-url="products/image" data-name="single">
Chose
</div>
<div class="single"></div>
И мой app.js:
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
if($('div').is('#single')){
var buttonSingle = $("#single"),
buttonMulti = $("#multi"),
file;
}
if(buttonSingle){
new AjaxUpload(buttonSingle, {
action: '/admin/' + buttonSingle.data('url') + "?upload=1",
data: {name: buttonSingle.data('name')},
name: buttonSingle.data('name'),
onSubmit: function(file, ext){
if (! (ext && /^(jpg|png|jpeg|gif)$/i.test(ext))){
alert('Exception');
return false;
}
buttonSingle.closest('.file-upload').find('.overlay').css({'display':'block'});
},
onComplete: function(file, response){
$res = JSON.parse(response);
if($res['error']){
alert($res['error']);
buttonSingle.closest('.file-upload').find('.overlay').css({'display': 'none'});
return false;
}
setTimeout(function(){
buttonSingle.closest('.file-upload').find('.overlay').css({'display':'none'});
response = JSON.parse(response);
$('.' + buttonSingle.data('name')).html('<img src="/images/' + response.file + '" style="max-height: 150px;">');
}, 1000);
}
});