laravel中的表单提交无效并显示令牌不匹配异常

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (10)

我是新的学习者。我在laravel 5.4中创建了一个表单,并添加了两个字段,一个是textfield,另一个是submit按钮。我已经为表单提交创建了一个名称路由。但是当我提交表单时,它显示令牌不匹配异常。我无法从我的代码中找出错误。这是我的表单代码。

<form method="post" action="{{route('f.submit')}}">
    {{csrf_field()}}

    <input class="form-control" type="text" name="fname">
    <input type="submit" name="submit" value="Create">
</form>

这是我的路线,

Route::post('formsubmit','HomeController@formSubmit')->name('f.submit');

在这里我的控制器,

 public function formSubmit()
{
    echo "Form Submitted";
}
提问于
用户回答回答于

您必须为令牌添加输入隐藏字段。将您的视图更改为:

<form method="post" action="{{route('f.submit')}}">
    <input type="hidden" name="_token" value="{{ csrf_token() }}">

    <input class="form-control" type="text" name="fname">
    <input type="submit" name="submit" value="Create">
</form>
用户回答回答于

你能否确保你的/storage目录有正确的写权限(0755)?如果你在Linux中,你可以改变它sudo chmod 0755 -R storage/

另外,请尝试不转义csrf_field()值。而不是{{ csrf_field() }}尝试,{!! csrf_field !!}因为该辅助函数吐出HTML

扫码关注云+社区

领取腾讯云代金券