在laravel5中提交curl表单期间csrf令牌不匹配

在laravel5中提交curl表单期间csrf令牌不匹配,curl,laravel-5,csrf-protection,Curl,Laravel 5,Csrf Protection,我正在尝试使用curl-post方法提交表单。我已将csrf令牌正确设置为表单。但在VerifyCsrfToken.php第46行中显示了令牌不匹配异常:。我被困在表单上并在web上搜索。但没有得到任何解决方案。csrf现在是在Laravel 5的App\Http\Kernel.php中全局注册的中间件。删除它将默认为无CSRF保护Laravel4行为。 注释掉或删除Kernel.php中的这一行 之前: protected $middleware = [ 'Illuminate\Fou

我正在尝试使用curl-post方法提交表单。我已将csrf令牌正确设置为表单。但在VerifyCsrfToken.php第46行中显示了令牌不匹配异常:。我被困在表单上并在web上搜索。但没有得到任何解决方案。

csrf现在是在Laravel 5的App\Http\Kernel.php中全局注册的中间件。删除它将默认为无CSRF保护Laravel4行为。 注释掉或删除Kernel.php中的这一行

之前:

protected $middleware = [
    'Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode',
    'Illuminate\Cookie\Middleware\EncryptCookies',
    'Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse',
    'Illuminate\Session\Middleware\StartSession',
    'Illuminate\View\Middleware\ShareErrorsFromSession',
    'App\Http\Middleware\VerifyCsrfToken',
];
之后:

protected $middleware = [
    'Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode',
    'Illuminate\Cookie\Middleware\EncryptCookies',
    'Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse',
    'Illuminate\Session\Middleware\StartSession',
    'Illuminate\View\Middleware\ShareErrorsFromSession',
    // 'App\Http\Middleware\VerifyCsrfToken',
];

您的表单应该如下所示

@extends('layout.main')
@section('content')
<form  action="{{URL::route('give-the-route')}}"   method="post">
<input type="text" name="name" placeholder=" Title">
<textarea name="description" cols="45" rows="5"placeholder="Brief Description "></textarea>
<input name="_token" type="hidden" value="{{csrf_token()}}">
<input type="submit" value="Publish"><br>

</form>

@stop
我的意思是不要忘了写下面这行

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

您需要在提交的curl表单中包含您的csrf令牌,或者您需要在该路径上禁用csrf保护……建议您这样做,但同时不提及采用这种方法所固有的安全风险,这是很危险的。CSRF保护的存在是有原因的,禁用它的人应该了解这样做的危险,或者至少被告知这样做有一定的危险。
@extends('layout.main')
@section('content')
<form  action="{{URL::route('give-the-route')}}"   method="post">
    <input type="text" name="name" placeholder=" Title">
    <textarea name="description" cols="45" rows="5"placeholder="Brief Description "></textarea>

    <!-- dont forgot to use this -->
    <input name="_token" type="hidden" value="{{csrf_token()}}">

    <input type="submit" value="Publish">
</form>
@stop