在Laravel中执行Post请求会产生TokenMismatchException

时间:2016-08-20 19:21:34

标签: php laravel post

我有一个带有标题和内容属性的Note模型。我还有显示所有注释(索引)和特定注释(显示)的视图。这很好。 现在我要创建一个表单并从表单创建Notes,并且有一个errorTokenMismatchException in VerifyCsrfToken.php line 67:。 这是我的Routes文件:

Route::get('/notes', 'NotesController@index');
Route::get('notes/{note}', 'NotesController@show');

Route::post('/notes', 'NotesController@create');

我的controller在Gist上。

我的view

我如何摆脱这个错误,以及导致它的原因?

2 个答案:

答案 0 :(得分:0)

添加隐藏的输入字段

<input type="hidden" name="_token" value="<?php echo csrf_token(); ?>"/>

并查看laravel's documentation

答案 1 :(得分:-2)

将您的观点更改为

{!! Form::open(array('url'=>'notes','method'=>'POST')) !!}

    {!! Form::label('title', 'Title') !!}
    {!! Form::text('title', null, ['class' => 'form-control']) !!}

    {!! Form::label('content', 'Title') !!}
    {!! Form::text('content', null, ['class' => 'form-control']) !!}

    {!! Form::submit('Submit', ['class' => 'btn btn-info']) !!}

{!! Form::close() !!}