لاراول فرم ها رو در برابر حمله های CSRF محافظت میکنه. درخواست های سایت ها / سرور های دیگر از درخواست های یک کاربر اهراز شده جدا میشن. برای اینکار لاراول یک توکن CSRF برای هر کاربر ایجاد میکنه با اینکار چک میکنه آیا این درخواست برای همین کاربر هست یا نه؟!
برای اینکار هرزمان که ما یک فرم در HTML مینویسیم باید حتما یک توکن CSRF رو در فیلد های HTML از نوع input با مقدار توکن ایجاد کنیم. اینکار به میدلور لاراول این امکان رو میده صحت درخواست مارو بررسی کنه. برای راحتی تنها نیاز به نوشتن @csrf داخل فرم بلیدمون داریم.
<form method="POST" action="/profile"> @csrf ... </form>
همچنین میتونیم این توکن رو در هدر صفحه هم ارسال کنیم:
<meta name="csrf-token" content="{{ csrf_token() }}">
یا توسط جاوا اسکریپت:
$.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } });
اطلاعات بیشتر درباره CSRF Protection