laravel ajax POST请求 错误 TokenMismatchException in VerifyCsrfToken.php (line 68)

因为:laravel 默认开启了 csrf验证

下面有几种方法解决:
1.

 <form id="editForm"> {{ csrf_field() }} ....

2.

<form id="editForm">
                <input type="hidden" name="_token" value="{csrf_token()}"/>
               ....

注意 :其实第一和第二是一码事 第一种方式只不过 laravel给你封装了一下。

上面都是针对form表单提交

下面看一下不是表单的形式提交数据

3.

$.ajax({
            type: "post",url: "{{ route('edit_msg') }}",dataType: "json",data: {'msg':newMsg,'type':str,'_token': "{!! csrf_token() !!}"},error:function(msg){ //处理出错的信息 
                  var errormessage="再试一次";  
                  $(".loginerror").html(errormessage);  
              },success: function(data) {
                }
         });

注意后面的data提交的数据 _token字段。

4.我们也可以在ajax请求头添加X-CSRF-Token

<meta name="_token" content="{!! csrf_token() !!}"/>

$.ajax({
            type: "post",headers: { 'X-CSRF-Token' : $('meta[name=_token]').attr('content') },'type':str},success: function(data) {
                }
         });

相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...