انا جديد في Laravel و جربت Auth عشان احفظ بضع بيانات المستخدم اذا سجل دخول و حسيتها مشابهة بـ session اثنينهم يأدون نفس الغرض وش الفرق ما بينهم ؟
الفرق بين Auth و session . في Laravel 11
Auth (المصادقة)
يستخدم لإدارة المصادقة وتسجيل الدخول للمستخدمين. يمكن من خلاله معرفة إذا كان المستخدم مسجلاً للدخول أو لا، وأيضًا إدارة تفاصيل المستخدمين مثل اسم المستخدم والبريد الإلكتروني .
Session (الجلسات)1
تستخدم لتخزين بيانات مؤقتة أي نوع من البيانات نحتاج لتخزينها أثناء فترة تصفح المستخدم يمكننا استخدام الجلسات. مثل معلومات سلة التسوق.
الفرق بين Auth و Session:
- Auth : يركز بشكل أساسي على مصادقة المستخدم وإدارة الجلسات المرتبطة بالمستخدمين.
- Session : يركز على تخزين بيانات مؤقتة قد تكون متعلقة أو غير متعلقة بالتصديق.
مرحبا بك في عالم Laravel :)
قد تبدو Auth و Sessions متشابهتان في البداية فقط؛ لأنهما يتعاملان مع تخزين وإدارة معلومات المستخدم. سأوضح الفرق : Sessions هو الذي يتذكر لك المستخدم بين كل طلب Request والطلب اللي بعده. وليس له علاقة بالتوثيق. أما Auth هو المزود الافتراضي في لارافيل للتوثيق. ويتيح لك الوصول إلى المستخدمين الموثقين لمشروعك. بمجرد أن يتم توثيق المستخدم (التأكد أنه هو الشخص، وتسجيل دخوله صحيح)، يتم استخدام الsessions لمتابعة من قام بتسجيل الدخول، ومن لم يسجل، وماذا يفعل، وهكذا (أي أنها تشمل بيانات تسجيل الدخول، لكنها غير مقتصرة على ذلك).
الفروق بشكل أوضح:
Auth (التوثيق):
- الوظيفة الأساسية: يستخدم Auth للتوثيق والتفويض. يمكن استخدامه لتسجيل دخول المستخدمين وتحديد هويتهم.
- طريقة العمل: يعتمد على استخدام موفرات التوثيق (Authenticators) التي تتعامل مع عمليات تسجيل الدخول والخروج والتحقق من الهوية.
- المرونة: يوفر Laravel واجهة افتراضية سهلة لإنشاء نظام تسجيل دخول معقد يمكن من خلاله تحديد الصلاحيات والأدوار للمستخدمين.
- التكامل مع Middleware: يمكن استخدام Auth مع middleware للتحكم في الوصول إلى أجزاء معينة من التطبيق بناءً على هوية المستخدم وصلاحياته.
Sessions (الجلسات):
- الوظيفة الأساسية: تستخدم الجلسات لتخزين بيانات المستخدم المؤقتة عبر جلسات متعددة. يمكن استخدامها لتخزين أي نوع من البيانات التي تحتاج إلى الاحتفاظ بها بين الطلبات.
- طريقة العمل: تعتمد على تخزين معرف الجلسة (Session ID) في ملف تعريف الارتباط (Cookie) في المتصفح، ويتم تخزين البيانات الفعلية في السيرفر.
- التطبيقات العامة: تستخدم الجلسات عادة لتخزين إعدادات المستخدم المؤقتة، سلات التسوق، رسائل التأكيد، بيانات النموذج المؤقتة، وغيرها من البيانات التي لا تحتاج إلى تخزين دائم.
التعليقات