Как отключить csrf laravel
Узнайте как отключить защиту CSRF в Laravel с помощью примеров и подробных инструкций. Научитесь как добавить исключения в маршруты, используя атрибуты и методы фильтров.
Отключение CSRF-защиты в Laravel достаточно просто. Для этого вам нужно просто добавить немного кода в роутер. Вот пример:
Route::post('user/profile', [
'uses' => 'UserController@update_avatar',
'as' => 'avatar.update',
'middleware' => 'disable-csrf',
]);
Здесь мы добавляем параметр ‘middleware’, в котором указываем имя ‘disable-csrf’. Вам нужно добавить это имя в настройки среды. Вы можете добавить его в файле app/Http/Kernel.php. Найдите раздел ‘protected $routeMiddleware’ и добавьте такую строку:
'disable-csrf' => AppHttpMiddlewareDisableCsrf::class
Здесь мы указываем имя промежуточного программного обеспечения ‘disable-csrf’ и путь к классу, где будет находиться код для отключения CSRF. Теперь нам нужно создать этот класс в директории app/Http/Middleware. Вот код, который мы должны добавить в файл:
<?php
namespace AppHttpMiddleware;
use Closure;
class DisableCsrf
{
/**
* Отключение проверки CSRF
*
* @param IlluminateHttpRequest $request
* @param Closure $next
* @return mixed
*/
public function handle($request, Closure $next)
{
return $next($request);
}
}
Теперь проверка CSRF будет отключена для маршрута, который мы указали в примере выше. Однако это не делает ваше приложение безопасным, так как вы все еще можете быть подвержены атакам со стороны злоумышленников. Поэтому мы рекомендуем всегда использовать CSRF-защиту для защиты приложения.