كيف يمكنني جعل نافذتي متصفح يتشاركان في نفس "الجلسة"؟

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

  •  02-07-2019
  •  | 
  •  

سؤال

لدي تطبيق يحتاج إلى فتح نافذة جديدة (في نفس النطاق) حتى يتمكن المستخدم من عرض تقرير، ولكن في بعض المتصفحات* لا تشارك النافذة الجديدة ملف تعريف الارتباط غير الدائم للنافذة الأصلية، مما يتسبب في يجب على المستخدم تسجيل الدخول مرة أخرى.هل هناك أي شيء يمكنني فعله لمنع المستخدم من تسجيل الدخول مرة أخرى في النافذة الجديدة؟

*في الواقع، يكون الأمر متقطعًا في IE7 - أحيانًا تشارك النوافذ الجديدة ملفات تعريف الارتباط، وأحيانًا لا تشارك ذلك.

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

المحلول

يبدو أن IE7 ينشئ عمليات جديدة باستخدام خوارزمية مختلفة عن IE6، ويمكن أن يسبب مشكلات ملفات تعريف الارتباط للجلسة.

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

نصائح أخرى

اعتقدت أن IE7 شارك ملفات تعريف الارتباط غير الدائمة مع علامات التبويب في نفس النافذة، بالإضافة إلى النوافذ التي تم إنشاؤها من النافذة الحالية (سواء كان هذا هو نفسه بالنسبة لعمليات الفتح اليدوية مثل ملف->جديد، أو فتح البرنامج النصي أم لا، فأنا" لست متأكدا)، ولكن تلك الحالات الجديدة لم تفعل ذلك.

يقوم Firefox بمشاركتها عبر جميع النوافذ، بغض النظر عن كيفية فتحها.لقد افترضت دائمًا أن هذا هو الحال تمامًا، وسيتعين عليك استخدام ملفات تعريف الارتباط الدائمة، أو جلسات بدون ملفات تعريف الارتباط، أو تطوير آلية تسجيل دخول/تذكرة واحدة للتغلب على ذلك.

أنا أستخدم ASP.NET وأعتمد على سلوك الجلسات التي تتم مشاركتها عبر نوافذ المتصفح وهو يناسبني.في الواقع، أنا أستخدمه لنفس السبب الذي استخدمته لعرض تقرير في النافذة الجديدة :)

هم يجب مشاركة ملفات تعريف الارتباط.لقد كانت تلك تجربتي في الماضي.سأقوم بالتحرير بمجرد انتهاء المسرحية.

هل يمكن أن يكون الأمر مرتبطًا بكيفية فتح النافذة، على سبيل المثال؟- جافا سكريبت مقابل.علامة الهدف؟

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