في تطبيق متعدد NSF، كيفية مسح الجلسة؟

StackOverflow https://stackoverflow.com/questions/9430875

  •  12-11-2019
  •  | 
  •  

سؤال

عندما ينقر المستخدم على ارتباط تسجيل الخروج، من السهل مسح خريطة StateSescope في قاعدة البيانات الحالية: giveacodicetagpre.

ولكن هذا يمسح فقط متغيرات Sessesscope لل NSF الحالي، وليس لجميع NSFS على الخادم.لذلك إذا قاموا بعد ذلك بتسجيل الدخول كمستخدم مختلف والانتقال إلى NSFs الأخرى التي سبق الوصول إليها مسبقا خلال جلسة المتصفح هذه، فإن جلسة المستعرض لا تزال تلتقط المتغيرات القلاعية للمستخدم المسجل سابقا على المستخدم.

إذا سبق التطبيق العديد من NSFS، فكيف يمكنك مسح جلسة المتصفح من جميع NSFS على الخادم؟

تحديث

بعد المناقشات، حصلت على عقد من الجلسة من Facescontext.getexternalcontext (). GetRequest (). النزاز (FALSE) ثم يسمى طريقة إبطال () عليه.هذا لم ينجح، لا يزال لديه نفس معرف الجلسة ويتم الاحتفاظ بالمتغيرات النموذجية.أعتقد أن فكرة الديكان عن ملف تعريف الارتباط هو السبب.أعتقد أنه يستخدم من قبل عميل الملاحظات بشدة للغاية.

هل كانت مفيدة؟

المحلول

هناك ملف تعريف الارتباط جلسة تسمى "Sessionid" على جانب المتصفح.

ماذا يحدث إذا قمت بإبطال / مسح ملف تعريف الارتباط أثناء عملية تسجيل الخروج؟

نصائح أخرى

لا أعرف كيفية مسح صلبة قاعدة بيانات أخرى، ولكن قد تفكر في نهج مختلف: قم بتخزين اسم المستخدم الذي تمت تهيئة Stessionscope في Stessionscope ومقارنة مع اسم المستخدم الذي يحاول تهيئةهو - هي.إذا كانت الأسماء مختلفة، فقم بمسح الجلسات وتهيئةها مرة أخرى.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top