如何在VerifyCsrfToken.php第46行中修复TokenMismatchException:使用Ajax和laravel 5.0?

灵魂艾克

我在将数据插入数据库中时遇到问题,因此我需要在其中插入歌曲信息的模块。因此,我只测试了较低版本的laravel(5.0 Laravel版本)和Ajax,以便将请求提交到后端。现在,当我按下提交按钮时,它显示出错误。

VerifyCsrfToken.php第46行中的TokenMismatchException:

错误: 错误

一件事是令牌正在发送到后端

代币

我将与大家分享我已经创建的示例代码。请参见下面的代码。

路线::

Route::post('/add_song','HomeController@add_song');

前端::

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


$(document).ready(function(){


    $('.btn_add_music').on('click',function(e){

        var song_title = $('#song_title').val();
        var song_artist = $('#song_artist').val();
        var song_lyrics = $('#song_lyrics').val();
        var currentToken = $('meta[name="csrf-token"]').attr('content');

        // var data = new FormData();
        // data.append('song_title',song_title);
        // data.append('song_artist',song_artist);
        // data.append('song_lyrics',song_lyrics);
        // data.append('currentToken',currentToken);

        var formData = '_token=' + $('.token').val();

        $.ajax({
            url: '/add_song',
            data: formData,
            type: 'POST',
            contentType: false, // NEEDED, DON'T OMIT THIS (requires jQuery 1.6+)
            processData: false, // NEEDED, DON'T OMIT THIS
            success:function(res) {
                console.log(res);
            },
            error:function(err) {
                console.log(res);
            }
            // ... Other options like success and etc
        })

    });
});

后端::

public function add_song(Request $request) {

    dd($request->all());

    $song_title = $request->get('song_title');
    $song_artist = $request->get('song_artist');
    $song_lyrics = $request->get('song_lyrics');
    return response()->json('Success Inserted');
}

HTML ::

<div class="modal fade" id="ModalSong" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg" role="document">
  <div class="modal-content">
    <div class="modal-header">
      <h5 class="modal-title" id="exampleModalLabel">Ready to Add New Song?</h5>
      <button class="close" type="button" data-dismiss="modal" aria-label="Close">
        <span aria-hidden="true">×</span>
      </button>
    </div>
    <form>
      <div class="modal-body">
         <div class="container-fluid">
           <div class="row">
              <input type="hidden" class="token" name="_token" value="<?php echo csrf_token(); ?>">
              <div class="col-md-6">
                <div class="form-group">
                  <label for="title"><b>Title:</b></label>
                  <input type="text" class="form-control" id="song_title">
                </div>
              </div>
              <div class="col-md-6">
                <div class="form-group">
                  <label for="artist"><b>Artist:</b></label>
                  <input type="text" class="form-control" id="song_artist">
                </div>
              </div>
           </div>

           <div class="form-group">
              <label for="comment"><b>Lyrics:</b></label>
              <textarea class="form-control" rows="5" id="song_lyrics"></textarea>
            </div>
         </div>
      </div>
      <div class="modal-footer">
        <button class="btn btn-danger btn_add_music" type="button">Submit</button>
      </div>
    </form>
  </div>
</div>

先生

我相信您发送的令牌错误。该语法似乎已关闭,但我的专业领域却没有。请尝试以下方法。

var formdata= new FormData();    
fd.append('_token', $('.token').val());

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Laravel 5,Forms,VerifyCsrfToken.php第46行中的TokenMismatchException

如何在文件中查找5个连续的“ 0”?

VerifyCsrfToken.php 67行中的Laravel 5.2 ajax上传进度栏和TokenMismatchException

使用Ajax在Laravel上的VerifyCsrfToken.php 67行中的TokenMismatchException

在Laravel 5中,如何为特定路由禁用VerifycsrfToken中间件?

VerifyCsrfToken.php第53行中的TokenMismatchException:在Laravel 5.1中

Laravel 5.1中VerifyCsrfToken.php第53行中的TokenMismatchException

如何在OpenUi5 / SapUI5中更改“ component0”的名称?

laravel模式提交表单获取错误“ VerifyCsrfToken.php第68行中的TokenMismatchException:”

laravel 5.1中的“ VerifyCsrfToken.php 53行中的TokenMismatchException:”

如何使用 For 循环生成从 0,0 到 5,5 的坐标?

VerifyCsrfToken.php 67行中的Laravel 5.2 TokenMismatchException

如何在 5x5 矩阵内在 1 和 0 之间切换并更新矩阵?熄灯逻辑游戏

VerifyCsrfToken.php Laravel 5.2中的TokenMismatchException

Laravel 5:在VerifyCsrfToken外部验证令牌

如何在5x5矩阵中找到(0,0)和(4,4)之间的最短路径,每步给定一个水平或垂直平移

VerifyCsrfToken.php 67行中的TokenMismatchException

如何在熊猫数据框中删除输出为0且速度大于5的所有行

如何在Laravel 5中同时使用orderBy和Paginate

如何在Laravel 5中使用php DateTime()函数

如何在Java中修复“ largeNumber ^ 5 + 1 = largeNumber ^ 5”

我們如何在 C 編程中將 10 數組中最大的 5 個數字替換為 1,最小的 5 替換為 0?

如何在PHP中检测(float)0 == 0还是null

如何修复radare2中的'无法在第3行组装'bl 0x400588'

Excel 如何将分数保留为分数 5/5 不是 1 或 0/5 不是 0

如何过滤以.0或.5结尾的数字?

VerifyCsrfToken.php 67行中的TokenMismatchException:将paytm与laravel 5.3集成时

如何在Laravel 5中调用模型?

如何在Laravel 5中翻译馆藏?