Я пытаюсь загрузить изображение с помощью ajax, и я получаю: Не удалось загрузить ресурс: сервер ответил статусом 500 (Internal Server Error). Вот мой Аякс:Ошибка MethodNotAllowedHttpException в Laravel 5 с использованием ajax
$('document').ready(function() {
$('#uploadImage').change(function(){
image = $('#uploadImage').val;
token = $('#token').val();
$.ajax ({
type: 'POST',
url: '/photo',
data: { image , token },
success: function(){
$('.img-thumbnail').attr("src", 'images/new_image.png');
}
})
})
});
Вот мой маршрут: Route::post('/photo', '[email protected]');
Это мой контроллер:
public function uploadPhoto(Request $request)
{
//Sets file name according to authenticated shop id
$imageName = 'new_image.png';
//Save file to public/images
$img = Image::make($request->file('image'));
$img->resize(380, 300)->save('images/' . $imageName, 60);
}
И это моя форма:
<form action="{{ action('[email protected]') }}" method="post" enctype="multipart/form-data">
<input id="token" type="hidden" name="_token" value="{{ csrf_token() }}">
<input id="uploadImage" class="btn btn-upload" type="file" name="image"> </form>
Ваша форма действия должна быть 'действие ('ShopsController @ uploadPhoto')', не так ли? На основе маршрута, на который вы отправляете POSTING? – ceejayoz
Проверить доступ, указанный в AccessControl – SohelAhmedM
Обратите внимание на знак подчеркивания ints (_token) - убедитесь, что вы отправили тот же знак подчеркивания в данные сообщения ajax – Vojko