0
Я пытаюсь отправить свою форму контакта с помощью ajax.I добавил токен csrf внутри метатега тоже. Однако я все еще получаю ошибку 500.laravel ajax form submit csrf token не работает
на заголовке
<meta name="csrf-token" content="{{ csrf_token() }}">
мой Laravel маршрут:
Route::post('/mail',[
'uses'=>'[email protected]',
'as'=>'api.postContact'
]);
метод контроллера
public function postContact(Requests $request)
{
if(Request::ajax()) {
$data = $request::all();
return response()->json([
'data'=>$data
]);
}
//$contact = new ContactModel($sub, $sender, $email, $body);
//ignore the fact that i am not properly utilizing variables as i am testing.
}
Аякса вызов
$.ajaxSetup({
header:$('meta[name="csrf-token"]').attr('content')
});
$.ajax({
url:'http://abounde.com/mail',
type:'POST',
dataType:'json',
data:$(this).serialize(),
success:function(data){
if(data){
console.log('submitted ');
}else{
//default bg
console.log('problem submission ');
}
},
error: function(data){
console.log(data);
}
});
@ RolfPedroErnst, который построен в классе laravel для возврата ответа json –
Возможная дублика te [несоответствие маркера Laravel csrf для запроса ajax POST] (http://stackoverflow.com/questions/32738763/laravel-csrf-token-mismatch-for-ajax-post-request) – Danh
Ошибка 500 обычно не является признаком того, что аутентификация завершается неудачно, это скорее признак некоторой ошибки кода, позволяющей серверу останавливаться. Вы посмотрели ResponseText? – Kjell