禁用CSRF令牌Laravel 5

时间:2018-04-12 08:26:26

标签: php laravel csrf

我通过Laravel构建了一项服务供学习, 但是当我测试POST请求时,我无法将CSRF发送到服务器,因为我的朋友使用WinFormsAndroidAngular因此,我想禁用它,或者如果你有任何解决方案请告诉我。

在文件VerifyCsrfToken.php(app \ Http \ Middleware \ VerifyCsrfToken.php)

我尝试将'/ *'或'api / article / create'添加到$除

之外

我得到500内部服务器错误,如果我保留原始文件VerifyCsrfToken.php,我得到419错误(我使用https://www.hurl.it

这是我的路线 my route image. 请帮我, 谢谢。

2 个答案:

答案 0 :(得分:0)

进入你的项目kernel.php。他们是一条线

 \App\Http\Middleware\VerifyCsrfToken::class,

关闭它或发表评论

答案 1 :(得分:-2)

你可以使用Barryvdh Cors

  

https://github.com/barryvdh/laravel-cors

按照上述链接

的说明操作

首先从您的根项目中使用此命令安装barryvdh cors

composer require barryvdh/laravel-cors

对于laravel> = 5.5就是全部。这个包支持Laravel。 如果您使用的是Laravel< 5.5,您还需要将Cors \ ServiceProvider添加到config / app.php提供程序数组中:

Barryvdh\Cors\ServiceProvider::class,

要为所有路由允许CORS,请在app / Http / Kernel.php类的$ middleware属性中添加HandleCors中间件:

protected $middleware = [
// ...
\Barryvdh\Cors\HandleCors::class,
];

如果要在特定中间件组或路由上允许CORS,请将HandleCors中间件添加到您的组:

protected $middlewareGroups = [
    'web' => [
       // ...
    ],

    'api' => [
        // ...
        \Barryvdh\Cors\HandleCors::class,
    ],
];

现在你的角色将被禁用