আমি একটি নতুন সমাধান নিয়ে এসেছি, যার সামান্য ওভারহেড রয়েছে, তবে মনে হচ্ছে এটি এখন পর্যন্ত প্রোটোটাইপ হিসাবে কাজ করছে। একটি অনুমান হ'ল আপনি লগ ইন করার জন্য একটি অনার সিস্টেম সিস্টেমের পরিবেশে রয়েছেন, যদিও আপনি যখনই ট্যাবগুলি স্যুইচ করেন তখন পাসওয়ার্ডটি পুনরায় জিজ্ঞাসা করার মাধ্যমে এটি অভিযোজিত হতে পারে।
কোনও নতুন ব্রাউজার ট্যাবে কোন ব্যবহারকারী সক্রিয় রয়েছে তা সনাক্ত করতে লোকালস্টোরেজ (বা সমমানের) এবং এইচটিএমএল 5 স্টোরেজ ইভেন্ট ব্যবহার করুন। যখন এটি ঘটে তখন একটি বার্তা সহ একটি ভুতের ওভারলে তৈরি করুন আপনি বর্তমান উইন্ডোটি ব্যবহার করতে পারবেন না (বা অন্যথায় উইন্ডোটি অস্থায়ীভাবে অক্ষম করুন, আপনি এটি সম্ভবত এটি স্পষ্টতামূলক হতে চান না)) উইন্ডোটি ফোকাস পুনরুদ্ধার করে, একটি এজেএক্স অনুরোধ লগিং প্রেরণ করুন ব্যবহারকারী ফিরে।
এই পদ্ধতির জন্য একটি সতর্কতা: আপনি কোনও উইন্ডোতে সাধারণ AJAX কলগুলি (যেমন, আপনার সেশনের উপর নির্ভর করে) ঘটতে পারে না যার ফোকাস নেই (উদাহরণস্বরূপ যদি আপনার কোনও কলটি দেরি হওয়ার পরে ঘটত) আপনি তার আগে ম্যানুয়ালি একটি এজেএক্স পুনরায় লগইন কল করেন। সুতরাং সত্যই আপনাকে যা করতে হবে তা হ'ল স্থানীয়আস্টোরেশন.কন্ট্রালি_লগড_ইন_উজার_আইডি === উইন্ডো.ইউর অ্যাপন নেমস্পেস.উজার_আইডি নিশ্চিত করার জন্য প্রথমে আপনার এজ্যাক্স ফাংশনটি যাচাই করা উচিত এবং যদি তা না হয় তবে এজেএক্সের মাধ্যমে প্রথমে লগ ইন করুন।
অন্যটি হ'ল রেসের শর্তসমূহ: যদি আপনি উইন্ডোজগুলিকে এটিকে বিভ্রান্ত করার জন্য দ্রুত দ্রুত স্যুইচ করতে পারেন তবে আপনি ভুল সেশনের অধীনে অজেক্স 1 তৈরি করে একটি রিলজিন 1-> রিলজিন 2-> অ্যাজ্যাক্স 1-> অ্যাজ্যাক্স 2 সিকোয়েন্সটি শেষ করতে পারেন। অ্যারেতে লগইন এজেএক্স অনুরোধগুলি ঠেলে এটিকে ঘিরে কাজ করুন এবং তারপরে স্টোরেজ এবং একটি নতুন লগইন অনুরোধ জারির আগে সমস্ত বর্তমান অনুরোধ বাতিল করে দিন।
উইন্ডো রিফ্রেশ করে দেখার জন্য সর্বশেষ গোটচা। যদি আপনি AJAX লগইন অনুরোধটি সক্রিয় থাকলেও সম্পূর্ণ না করে কেউ উইন্ডোটি রিফ্রেশ করে তবে এটি ভুল ব্যক্তির নামে সতেজ করা হবে। এই ক্ষেত্রে আপনি সম্ভাব্য মিক্সআপ সম্পর্কে ব্যবহারকারীকে সতর্ক করতে এবং পূর্বেই আনড্যান্ডার্ড ইভেন্টটি ব্যবহার করতে পারেন এবং বাতিলটিকে ক্লিক করতে অনুরোধ করতে পারেন, এরই মধ্যে একটি এজেএক্স লগইন অনুরোধটি পুনরায় প্রকাশ করে। এরপরে তারা অনুরোধটি জানার একমাত্র উপায় হ'ল অনুরোধটি শেষ হওয়ার আগে ওকে ক্লিক করে (বা দুর্ঘটনাক্রমে প্রবেশ / স্পেসবারে আঘাত করে, কারণ ঠিক আছে - দুর্ভাগ্যক্রমে এই ক্ষেত্রে - ডিফল্ট)) এই কেসটি হ্যান্ডেল করার অন্যান্য উপায় আছে যেমন F5 এবং Ctrl + R / Alt + R টিপুন সনাক্ত করা হচ্ছে যা বেশিরভাগ ক্ষেত্রে কাজ করবে তবে ব্যবহারকারী কীবোর্ড শর্টকাট পুনরায় কনফিগারেশন বা বিকল্প ওএস ব্যবহারের দ্বারা ব্যর্থ হতে পারে। তবে বাস্তবে এটি সামান্যতম ঘটনা, এবং সবচেয়ে খারাপ পরিস্থিতি কখনও খারাপ হয় না: সম্মান সিস্টেমের কনফিগারেশনে আপনি ভুল ব্যক্তি হিসাবে লগ ইন করতে পারেন (তবে আপনি এটি স্পষ্ট করে তুলতে পারেন যে রঙ, শৈলী, বিশিষ্টভাবে প্রদর্শিত নাম, ইত্যাদি); একটি পাসওয়ার্ড কনফিগারেশনে, শেষ ব্যক্তিটি লস আউট বা তাদের সেশনটি ভাগ করে নেওয়ার জন্য তাদের পাসওয়ার্ডটি প্রবেশ করিয়েছিল বা এই ব্যক্তিটি যদি প্রকৃতপক্ষে বর্তমান ব্যবহারকারী হয় তবে তার কোনও লঙ্ঘন নেই।
তবে শেষ পর্যন্ত আপনার কাছে এক-ব্যবহারকারী-প্রতি-ট্যাব অ্যাপ্লিকেশন রয়েছে যা (আশা করা যায়) কেবলমাত্র প্রয়োজনীয়ভাবে প্রোফাইলগুলি সেট আপ না করে, আইআই ব্যবহার করতে, বা ইউআরএলগুলি পুনরায় লেখার ছাড়াই ঠিক যেমনটি করা উচিত তেমন কাজ করে। নিশ্চিত হয়ে নিন যে আপনি যে নির্দিষ্ট ট্যাবে লগ ইন করেছেন তা প্রতিটি ট্যাবে এটি সুস্পষ্ট করে দিয়েছেন, যদিও ...