TokenMismatchException в VerifyCsrfToken.php (строка 68) в AJAX

-1

Я нахожусь на laravelcollective, и я хочу отправить заявку, но я получаю

Ошибка TokenMismatchException в VerifyCsrfToken.php (строка 68)

Вот мой код:

 function storeUser(url) {  
    var name = $('input[name=name]').val() ;
    var email = $('.email').val() ; 
    var password =  $('.password').val() ; 
    var role_id = $('select[name=role_id]').val () ; 
    var barangay_id = $('select[name=barangay_id]').val () ; 
    var status = $('select[name=status]').val();
    console.log(barangay_id) ; 
    $.ajax({ 
        method : 'POST', 
        url : url , 
        data : 
        {  
            role_id     : role_id ,
            email       : email  ,
            name        : name , 
            password    : password , 
            barangay_id : barangay_id ,
            status      : status  , 
        }, 
        success : function (data)  { 
            swal({
                title: "Success",
                text: "User saved successfuly",
                type: "error",
                confirmButtonColor: "#66cc99"
            });
        } , 
        error:  function (xhr,reason,ex)  
        { 
            if (xhr.status == 500){ 
                swal({
                    title: "500",
                    text: "Internal Server",
                    type: "error",
                    confirmButtonColor: "#66cc99"
                });
            }
            if(xhr.status == 422){ 
                var data = xhr.responseJSON ;
                for(let i in data) {
                    console.log(i,data[i][0]) ;
                    swal({ 
                        title : '422', 
                        text : 'Fill all the fields properly' ,
                        type: 'error' ,
                        confirmButtonColor: "#66cc99"
                    })
                }

            }
        }
    })
 }

Вот фрагмент моей формы:

<div class="form-group">
    <label for="input-text" class="col-sm-2 control-label">Full Name</label>
    <div class="col-sm-10">
        {!! Form::text('name', null, ['id'=>'input-text','class'=>'form-control full-name','placeholder'=>'e.g Juan De la Cruz']) !!}
    </div>
</div>

<div class="form-group">
    <label for="input-text" class="col-sm-2 control-label">Email</label>
    <div class="col-sm-10">
        {!! Form::email('email' , null, ['id'=>'input-text','class'=>'form-control email','placeholder'=>'e.g [email protected]']) !!}
        <span class="availability"></span>
    </div>
</div>


<div class="form-group">
    <label for="input-text" class="col-sm-2 control-label">Password</label>
    <div class="col-sm-10">
        {!! Form::text('password',null,['class'=>'form-control password']) !!}
    </div>
</div>

<div class="form-group">
    <label for="input-text" class="col-sm-2 control-label">Role </label>
    <div class="col-sm-10">
        <select class="form-control" name="role_id"> 
            @foreach ($roles as $role ) 
            <option value="{{ $role->id }}">{{ $role->name }}</option>
            @endforeach
        </select>
    </div>
</div>


<div class="form-group">
    <label for="input-text" class="col-sm-2 control-label">Barangay </label>
    <div class="col-sm-10">
        <select class="form-control" name="barangay_id"> 
            @foreach($barangays as $barangay ) 
            <option value="{{ $barangay->id }}">{{ $barangay->name }}</option>
            @endforeach
        </select>
    </div>
</div>

<div class="form-group">
    <label for="input-text" class="col-sm-2 control-label">Status :  </label>
    <div class="col-sm-10">
        <select class="form-control" name="status"> 
            <option value="1">Activate</option>
            <option value="0">Pending</option>
        </select>
    </div>
</div>




{!! Form::submit($submitButtonText, ['class' => 'btn btn-success pull-right submitBtn']) !!}

Здесь мой контроллер

public function store(StoreUserRequest $request) {
    $user = User::create(request(['role_id','email','name','password','barangay_id','status'] )) ; 
    return response()->json($user) ;

}

Почему я получаю внутреннюю ошибку сервера 500 при использовании ajax. Есть ли ошибка в моем коде?

  • 0
    Возможное дублирование несоответствия токена lasvel 5.1 auth csrf
  • 0
    Вы не отправляете token в ваших данных. Вот почему.
Показать ещё 5 комментариев
Теги:

1 ответ

3

Сделайте это заранее в своем JS:

$.ajaxSetup({
    headers: {
        'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
    }
});

И по вашему мнению (в голове):

<meta name="csrf-token" content="{{ csrf_token() }}">

Ссылка: Документация

  • 0
    О да, пусть встретил это
  • 0
    @ d3cypher Это сработало?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню