Laravel 5 POST方法不起作用

时间:2018-06-11 15:05:55

标签: php laravel-5

我的Laravel get方法正在运行但是post方法无效。

控制器

public function create(Request $request)
{

    if (Request::isMethod('post'))
    {
        echo 'text';
        exit;
    }

}

叶片

<form action="{{route('create')}}" method="POST">
<input name="name" class="form-control" type="text">    
<input name="email" class="form-control" type="email">  
<input type="submit" class="btn btn-primary btn-lg btn-block" name="submit">
</form>

路线

Route::post('/create', 'Tools\PostController@create')->name('create');

错误

由于不活动,该网页已过期。 请刷新并重试。

1 个答案:

答案 0 :(得分:1)

您收到“由于不活动而导致页面已过期。请刷新并重试”,因为您没有通过帖子请求传递csrf令牌。

默认情况下,laravel拒绝任何请求中没有csfr令牌的帖子请求。

试试这个:

在您的刀片文件中包含一个隐藏的输入,如下所示:

<input name="token" type="hidden" value="{{ csrf_token() }}">

有关详细信息,请参阅docs