Amir Alsaeed نشر 19 مارس 2021 أرسل تقرير نشر 19 مارس 2021 أحاول تسجيل الدخول عن طريق form في لارافيل وبعد الضغط على زر تسجيل الدخول (submit) يظهر لدي الخطأ التالي: The page has expired due to inactivity. Please refresh and try again. ولكنني قمت بإضافة CSRF token ضمن الفورم: <form class="form-horizontal registration-form" novalidate method="POST" action="{{ route('register') }}"> {{ csrf_field() }} </form> كيف يمكنني حل هذه المشكلة؟ 1 اقتباس
0 بلال زيادة نشر 19 مارس 2021 أرسل تقرير نشر 19 مارس 2021 يمكنك تحديث الصفحة مرة أخرى, ولكن تحدث هذه المشكلة من التحقق من رمز CSRF الذي فشل, لذلك إما أنك لا تنشر رمز CSRF أو تنشر CSRF غير صحيح, السبب في أنها تعمل مع GET هو أنه بالنسبة لمسار GET في Laravel, لا يوجد رمز CSRF منشور. يمكنك إما نشر رمز CSRF مميز في النموذج الخاص بك عن طريق {{ csrf_field() }} أو @csrf أو في مسار app/Http/Middleware/VerifyCsrfToken.php يمكنك استبعاد المسار الذي تريده من التحقق من CSRF من خلال وضعه في protected $except = [ 'your/route' ]; اقتباس
0 عبد الله محمد5 نشر 19 مارس 2021 أرسل تقرير نشر 19 مارس 2021 اللارافيل تستخدم csrf token للتأكد من أن البيانات القادمة إلى الserver قادمة من الform حتى تمنع عمليات التهكير ويتم ذلك عندما تقوم بوضع @csrf والذي سيتم تحويله إلى input يحتوي على كود معين يتم مقارنته في الserver للتأكد من أن الطلب قادم فعلاً من مصدره والإشكال الذي ظهر لك يحدث إما لأنك لم تقم بتضمين الcsrf او لأن الcsrf token قد انتهت صلاحيته لأنك اخذت وقتاً طويلاً لتضمين الcsrf يجب عليك فعل التالي: <form action="" method="post"> @csrf </form> 1 اقتباس
0 Sam Ahw نشر 19 مارس 2021 أرسل تقرير نشر 19 مارس 2021 يظهر هذا الخطأ بعد التحقق والمشكلة هنا في إعدادات الجلسات session في مشروعك. يجب التأكد من أن session driver يقوم بالحفظ ضمن ملف file وليس array. فبشكل افتراضي يمكن أن يتم استخدام المصفوفات للتجربة فقط ولكن عند الحاجة لنشر المشروع يجب تغييرها ليتم حفظ الجلسات ضمن ملف بدلاً من ذلك. والتأكد أيضاً من وجود الملف ومساره الصحيح والصلاحيات على هذا الملف بأن يكون قابل للكتابة: is_writable(config('session.files')) وأيضاً يجب التحقق من الكود الموجود ضمن config/session.php ونوع الاتصال في حال كان HTTPS (SSL/TLS) للنطاق الذي يحوي المشروع يجب تعديل sessions.secure إلى القيمة true. 1 اقتباس
السؤال
Amir Alsaeed
أحاول تسجيل الدخول عن طريق form في لارافيل وبعد الضغط على زر تسجيل الدخول (submit) يظهر لدي الخطأ التالي:
The page has expired due to inactivity. Please refresh and try again.
ولكنني قمت بإضافة CSRF token ضمن الفورم:
كيف يمكنني حل هذه المشكلة؟
3 أجوبة على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.