في اليومين الماضيين ، لأنني استخدمت Ajax على الواجهة الأمامية لبدء طلب تحديث غير متزامن ، وجدت أن Ajax ستعرض عنوان واجهة الواجهة الخلفية. بالطبع ، هذه المشكلة أمر لا مفر منه ، والواجهة الأمامية هي نص عادي. لسوء الحظ ، طرحت أسئلة مختلفة في مجموعات Baidu و Google و QQ. قالوا جميعًا أنه لا يمكن حل المشكلة إلا من خلال التحقق الأمني. كمبتدئ ، الخيار الأول هو بالطبع جلسة. هناك التحقق من الرمز المميز ، أطر عمل شريو ، إلخ. يمكن للأصدقاء المهتمين البحث عن البرامج التعليمية عبر الإنترنت للتعلم.
الجلسة هي آلية ذاكرة التخزين المؤقت للخوادم الموجودة ، والتي يمكن أن تتحقق مما إذا كان المستخدم قد قام بتسجيل الدخول. لقد كتبت ما تعلمته حتى يتمكن المبتدئون من تجنب مسارات الانحناء وتحميل الكود مباشرة ~
أولاً ، يجب إضافة طلب HttpServletRequest request إلى معلمات واجهة تسجيل الدخول SSM للحصول على الجلسة التي يحملها الطلب.
ثانياً ، قم بتعيين الجلسة في رمز واجهة تسجيل الدخول ، HttpSession session = request.getSession(true); // هذه الجملة هي الحصول على جلسة ، يعني صحيح أنه إذا لم تكن هناك جلسة ، فقم بإنشاء جلسة جديدة دون ملءها.
session.setAttribute("logined","success"); // هذه الجملة هي كتابة شعار. يمكنك أيضًا تعيين الحساب المسجل في الجلسة لمنع العبث بشكل ضار بمعلومات حساب آخر عند بدء طلب تعديل.
ثالثًا ، كيف تتحقق على الواجهة؟ من الضروري أيضًا استخدام معلمة طلب httpservletrequest للحصول على الجلسة التي يحملها العميل الذي يبدأ طلب HTTP. HttpSession session = request.getSession(); session.getAttribute("logined") لقراءة ما إذا كان هناك مفتاح مسجّل. إذا لم يكن هناك تسجيل دخول ، فلن يتم تقديم المحتوى المطلوب ، وسيتم إرجاع المعلومات مباشرة لتذكير المستخدم بتسجيل الدخول.
مشكلة نطاق جلسة مشروع SSM
الوصف: بعد قيام المستخدم بتسجيل الدخول إلى النظام بنجاح ، يضع معلومات المستخدم ذات الصلة في مجال جلسة لسهولة الاتصال ، ويسمى XX.
عندما يقوم المستخدم بتسجيل الدخول إلى هذا النظام ، يحتاج/هي إلى تعديل معلوماته الشخصية. بعد اكتمال التعديل ، يتم إعادة صياغة المعلومات الشخصية المعدلة للمستخدم على صفحة مكتب الاستقبال في مجال الجلسة هذا للكتابة فوق الجلسة السابقة. وبهذه الطريقة ، عندما يقوم المستخدم بتسجيل الدخول مرة أخرى أو يتحقق ، فإن المعلومات بعد تغييرها.
التحليل: عندما يرغب المستخدم في تعديل معلوماته الشخصية بعد تعديل معلوماته الشخصية (تعديل المعلومات الشخصية وتعديل كلمات المرور الشخصية ليست على نفس الصفحة) ، ستتم مطالب كلمة المرور القديمة التي تم إدخالها بأن تكون خاطئة ، لأنه لا توجد كلمة مرور شخصية عند تعديل المعلومات الشخصية. أي عندما يقوم المستخدم بتعديل معلوماته الخاصة ويحكم معلوماته في الجلسة ، يتم تغليف كلمة المرور الشخصية بقيمة فارغة ، ولا يمكن الحصول على كلمة المرور الحقيقية لتسجيل الدخول للمستخدم في هذا الوقت.
الحل: إذا كنت ترغب في تعديل كلمة المرور الشخصية بسلاسة بعد تعديل معلوماتك الشخصية ، فيجب عليك إضافة مجال مخفي لكلمة مرور المستخدم إلى الصفحة التي تقوم فيها بتعديل معلوماتك الشخصية. وبهذه الطريقة ، سيتم تغليف كلمة مرور تسجيل الدخول الشخصية في الكائن بالمعلومات التي تم تعديلها من قبل المستخدم ، وسيتم حشوها في مجال الجلسة. وبهذه الطريقة ، يمكن استدعاء الدفع الداخلي في مجال الجلسة عند تعديل كلمة المرور ، ولن تكون كلمة المرور فارغة.
ما سبق هو كل محتوى هذه المقالة. آمل أن يكون ذلك مفيدًا لتعلم الجميع وآمل أن يدعم الجميع wulin.com أكثر.