Новые Blade директивы в Laravel 5.6

В Laravel 5.6 добавятся 2 новых Blade директивы: вывод поля с CSRF токеном и вывод поля с HTTP методом формы.

Laravel 5.6 новые Blade директивы

Ранее (в Laravel < 5.6) для вывода скрытых полей с CSRF токеном и HTTP методом мы использовали "вспомогательные функции":

<form>
  {{ csrf_field() }}
  {{ method_field('PUT') }}
  <!-- ... >
</form>

Начиная с версии 5.6 нам доступны 2 новые директивы: @csrf и @method которые позволят нам делать так:

<form>
  @method('put')
  @csrf
  <!-- ... >
</form>

Всю заботу по защите сайта от CSRF атак Laravel берет на себя, без каких либо дополнительных телодвижений с вашей стороны. Однако, чтобы форма была успешно отправлена, необходимо добавить в нее поле _token с CSRF токеном, чтобы Laravel мог убедиться что запрос отправлен с вашего сайта, а не с какого-то другого. 

Эти новые директивы станут нам доступны после выхода версии 5.6 (ожидается в конце февраля 2018г). Если вы хотите изучить их исходный код, сделать это можно тут.

Я думаю новые директивы проще запомнить и использовать, но если вы не хотите отказываться от старого способа, то ничего страшного, "вспомогательные функции" csrf_field и method_field останутся доступными.

Опубликовано:

Категории: Новости