Mengirim perintah dari sisi server (.NET) ke browser

Kami memiliki beberapa aplikasi web yang memungkinkan pengguna login dan melakukan beberapa pekerjaan. Namun terkadang pengguna yang bekerja dengan situs web kami membuka lebih dari satu browser dan ini menyebabkan banyak masalah bagi kami. Bagaimana kami bisa menerapkan hal berikut - saat pengguna masuk ke situs web kami, membuat logout otomatis di semua browser yang sebelumnya masuk?

Terima kasih banyak.


person Ilan    schedule 04.08.2015    source sumber
comment
Mungkin bukan hal yang ingin Anda dengar, tetapi Anda harus memperbaiki masalah yang disebabkan oleh membuka lebih dari satu browser daripada mengabaikannya.   -  person CodingIntrigue    schedule 04.08.2015


Jawaban (1)


Anda dapat menggunakan JS localStorage saat memuat halaman untuk mendeteksi login pengguna, acara tersebut akan diaktifkan pada setiap tab atau jendela yang dibuka dalam domain yang sama:

function storageChange(event) {
    if(event.key == 'user_login') {

        // logout - except current window
    }
}
window.addEventListener('storage', storageChange, false);

//when user logs in
window.localStorage.setItem('user_login', true);

Itu hanya akan berfungsi jika pengguna menggunakan browser yang sama beberapa kali.

person fmgp    schedule 04.08.2015
comment
Apakah ini akan berfungsi juga jika pengguna masuk dari browser yang berbeda? - person Ilan; 04.08.2015
comment
Terima kasih tetapi kami juga memerlukan solusi untuk kasus browser yang berbeda. - person Ilan; 04.08.2015