Pengesahan Log Masuk AngularJS ui-router: Menggabungkan Bahagian dengan Apl Berbeza
Masalah:
Anda mempunyai dua aplikasi AngularJS dengan konfigurasi ui-router, satu untuk halaman utama dan satu lagi untuk papan pemuka. Selepas log masuk berjaya, bagaimanakah anda mengubah hala apl halaman utama ke apl papan pemuka?
Penyelesaian:
Untuk menggabungkan dua bahagian dengan apl AngularJS yang berbeza, ikut langkah berikut:
-
Melaksanakan Pengurusan Identiti:
Buat perkhidmatan untuk mengesahkan dan menjejaki identiti pengguna (prinsipal). Selesaikan identiti ini sebelum sebarang keadaan berubah.
-
Semakan Kebenaran:
Buat perkhidmatan (kebenaran) yang melakukan semakan kebenaran sebelum menukar keadaan menggunakan perkhidmatan utama. Jika pengguna tidak disahkan atau gagal semakan peranan, ubah hala mereka ke halaman yang sesuai.
-
Dengar Perubahan Keadaan:
Dalam blok konfigurasi AngularJS, tambahkan pendengar pada acara $stateChangeStart. Gunakan pendengar ini untuk memulakan semakan kebenaran.
-
Force Identity Resolution:
Selesaikan identiti dalam keadaan kebenaran ui-router menggunakan sifat resolve. Ini memastikan bahawa penyelesaian identiti berlaku sebelum semakan kebenaran.
-
Pengalihan Laluan Bersyarat:
Jika semakan kebenaran gagal, halang perubahan keadaan semasa dengan membatalkan peralihan laluan atau mengubah hala ke laluan lain .
-
Kendalikan Log Keluar:
Laksanakan mekanisme untuk melog keluar pengguna, yang akan mengosongkan identiti dan ubah hala ke halaman utama.
-
Tugaskan Peranan kepada Negeri:
Tambahkan sifat data.roles pada keadaan yang memerlukan peranan khusus untuk akses. Perkhidmatan kebenaran akan menggunakan ini untuk melakukan semakan peranan.
-
Elemen Paparan Bersyarat:
Gunakan perkhidmatan utama untuk memaparkan elemen paparan secara bersyarat berdasarkan status pengesahan atau penetapan peranan.
Dengan melaksanakan langkah-langkah ini, anda boleh berjaya menggabungkan dua aplikasi AngularJS dengan konfigurasi ui-router yang berbeza dan memastikan pengesahan log masuk yang betul dan kawalan akses berasaskan peranan.
Atas ialah kandungan terperinci Bagaimana untuk Mengintegrasikan Aplikasi AngularJS dengan ui-router untuk Log Masuk Selamat dan Akses Berasaskan Peranan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!