Laravel 5.2 | CSRF令牌不匹配

时间:2016-08-04 09:24:02

标签: ajax laravel-5.2 csrf

我使用AJAX发布请求并使用CSRF-TOKEN发送 - 在我的本地服务器上运行良好,但在我的IIS SERV TokenMismatchException in VerifyCsrfToken.php line 67:

这是代码:

               $.ajax({
                    url     : '{{ route('dashboard.ajax.update') }}',
                    method  : 'POST',
                    data    : {
                        table       : 'categories',
                        data        : {
                            order: $count
                        },
                        conditions  : {
                            id: $id
                        }
                    },
                    dataType: 'JSON',
                    headers : {
                        "X-CSRF-TOKEN": '{{ csrf_token() }}'
                    }
                });

在控制台中,我可以看到请求:X-CSRF-TOKEN:w3liodqf8bdOvWH9uVTzLHVVsE0L1uIlCpnOyVVS

什么可能导致这个问题?

2 个答案:

答案 0 :(得分:0)

    $.ajax({
        type: 'POST',
        url: 'stringUrl',
        beforeSend: function (xhr) {
            xhr.setRequestHeader('X-CSRF-TOKEN', '{{ csrf_token() }}');
        },
        data: {
            'id': $id // etc..
        },
        cache: false,
        error: function (xhr, type, exception) {
            console.log("ajax error response type " + type);
        }
    });

尝试将其设置为“beforeSend”事件

答案 1 :(得分:0)

问题出在我的会议上。我已清理了所有会话文件,清理了缓存并使用了php artisan key:generate。在此之后 - 工作还不错。