Задать вопрос
@adam_carraway

Из-за чего ошибка 419 (unknown status)?

Передаю post запрос через ajax в итоге ошибка 419 . (если get запрос то ошибок нет)
$.ajaxSetup({
                    headers: {
                        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
                    }
                });
                $.ajax({
                    url: "/exit",
                    type: "POST",
                    data: "get=on",
                    success: function (response) {
                       console.log('+')
                    }
                });

в шапе присутствует
<meta name="csrf-token" content="{{ csrf_token() }}">

Роутер Route::post('/exit', 'SpaController@exit');
Как решить данную ошибку
  • Вопрос задан
  • 11363 просмотра
Подписаться 3 Простой 2 комментария
Решения вопроса 1
@adam_carraway Автор вопроса
Решил проблему передачей токена в data
$.ajax({
                    url: "/exit",
                    type: "POST",
                    data: {"_token": $('meta[name="csrf-token"]').attr('content')},
                    success: function (response) {
                       console.log('+')
                    }
                });
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@empirikk
У меня рабочая схема, без form выглядит, не вдаваясь в детали, вот так:
HTML:
<div>
@csrf{{--эта конструкция преобразуется в input c именем _token, пример: <input type="hidden" name="_token" value="tyiV5lsNJy9aA245dke7979aW1otyutV5D">--}}
<input class='text' type='text'>
<input type='submit'>
</div>


JQuery:
let someV = $('.text').val();
let token = $("input[name='_token']").val();
                $.ajax({
                    type: 'POST',
                    url: '/someurl',
                    data: {
                       '_token': token,
                        "someV" : someV
                    },
                    success:function (res){
                        console.log('F**k yeah');
                    }

                })

Надеюсь кому-нибудь поможет)
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы