Laravel错误TokenMismatchException&

时间:2017-10-18 18:51:52

标签: php angularjs laravel

我尝试注册用户(使用角度js)。这是我的表格:register.blade.php

 <div class="panel-footer" id="free-panel-footer">
        <form
          name="registerCtrl.registerForm"
          ng-submit="registerCtrl.submit(registerCtrl.registerForm.$valid)"
          novalidate
          class="register-form"
          autocomplete="off">
          <input type="hidden" name="_token" value="<?php echo csrf_token(); ?>">

....

在头索引文件中我把它:

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

但我在compiled.php第2927行&amp;中遇到错误TokenMismatchException?

1 个答案:

答案 0 :(得分:0)

尝试使用{!! csrf_field() !!}替换您手动编写的隐藏输入。这将为您打印令牌,您将确定它是正确的名称和值。

由于您没有在默认的GET或POST请求中提交表单,因此您需要手动将该字段添加到您正在执行的AJAX调用中,并且您可以使用该生成的字段来收集名称和值。 CSRF令牌。您需要为您的javascript执行something like this

以防万一没有这方面的工作,并且根据您自己对您将要创建的安全漏洞的责任,您可以排除在app/Http/Middleware/VerifyCsrfToken中间件上需要csrf-token的具体路由,添加{{ {1}}数组。