【问题标题】:Laravel submit data with ajax not work errer TokenMismatchException in VerifyCsrfToken.php line 68:Laravel 使用 ajax 提交数据不起作用 errer TokenMismatchException 在 VerifyCsrfToken.php 第 68 行:
【发布时间】:2017-10-22 09:11:20
【问题描述】:

此代码不起作用:令牌中的错误,但它存在于表单和 ajax 中

<script type="text/javascript">

              jQuery(document).on('click','.add-product', function(event){

                     event.preventDefault();
                  var product_image = $('#product_image').prop('files')[0];
                  var _token = '{{csrf_token()}}';
                  var product_name = $('#product_name').val();
                  var product_description = $('#product_description').val();
                  var product_price = $('#product_price').val();
               var product_status = $( "#product_status option:selected").val();
            var product_section = $( "#product_section option:selected").val();
                    var data = new FormData();
                    data.append( _token ,_token);
                   data.append( product_name ,product_name);
                   data.append( product_description ,product_description);
                   data.append( product_price ,product_price);
                   data.append( product_status ,product_status);
                   data.append( product_section ,product_section);
                   data.append( product_image ,product_image);
                  data.append( product_file ,product_file);


                    jQuery.ajax({
                        url:url+'/admin-cp/add-new-product',
                        type: 'POST',
                        cache:false,
                        dataType: 'json',
                        data: data,
                        contentType:false,//"multipart/form-data",
                        processData:false, 
                        success: function(response){
                           jQuery('body').html(response.data);
                           //alert("Done");
                        },
                    });

                });
</script>

【问题讨论】:

    标签: php jquery ajax laravel-5


    【解决方案1】:

    在 laravel 的 ajax 请求中使用这个很方便

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

    阅读本文,一切都会好起来的 Laravel CSRF-token for ajax request

    【讨论】:

      【解决方案2】:

      如果您在标头中发送 csrf 令牌将有效 csrf

      【讨论】:

        【解决方案3】:

        尝试将{{csrf_token()}} 添加到您的表单中

        <input type="hidden" value="{{csrf_token()}}">
        

        【讨论】:

          猜你喜欢
          • 2017-07-29
          • 2017-02-21
          • 2017-02-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-10-06
          • 1970-01-01
          相关资源
          最近更新 更多