Pertimbangan Ui-router dalam Pengesahan AngularJS
Menavigasi antara bahagian aplikasi yang berbeza semasa melaksanakan pengesahan log masuk boleh menjadi satu cabaran apabila menggunakan AngularJS ui -penghala. Begini cara mengendalikan senario ini:
Menentukan Identiti Pengguna
Buat perkhidmatan yang dipanggil prinsipal untuk mengurus identiti pengguna. Ia harus dapat menentukan sama ada pengguna disahkan, mendapatkan semula maklumat penting pengguna (cth., nama paparan, nama pengguna) dan melakukan semakan peranan.
Keizinan
Laksanakan perkhidmatan kebenaran yang menggunakan perkhidmatan utama untuk menyemak sama ada pengguna dibenarkan untuk mengakses keadaan tertentu. Jika tidak, ia mengubah hala pengguna yang tidak disahkan ke halaman log masuk atau pengguna yang tidak dibenarkan ke halaman yang dinafikan akses.
Pendengar Acara Ui-router
Dengar untuk $stateChangeStart acara dalam ui-router. Dalam acara ini, gunakan perkhidmatan kebenaran untuk menyemak kebenaran untuk keadaan destinasi yang dimaksudkan. Jika kebenaran gagal, batalkan peralihan keadaan atau ubah hala ke halaman yang sesuai.
Menyelesaikan Identiti Pengguna
Sebelum kebenaran menyemak, identiti pengguna mesti diselesaikan. Tentukan keadaan induk dalam ui-router dengan sifat menyelesaikan yang memanggil fungsi kebenaran perkhidmatan kebenaran. Ini memastikan bahawa resolusi identiti berlaku sebelum sebarang keadaan berubah.
Perenderan Bersyarat
Gunakan perkhidmatan utama dalam paparan untuk memaparkan elemen atau templat secara bersyarat berdasarkan status pengesahan pengguna atau peranan. Sebagai contoh, anda boleh menunjukkan/menyembunyikan komponen menggunakan arahan seperti ng-show atau ng-hide.
Halaman Utama dan Papan Pemuka
Dalam aplikasi sampel anda, konfigurasikan keadaan untuk halaman utama yang membenarkan akses pengguna yang tidak disahkan. Tambahkan pautan atau borang untuk log masuk atau pendaftaran. Buat keadaan berasingan untuk papan pemuka dan takrifkannya sebagai anak kepada keadaan induk yang memerlukan pengesahan.
Atas ialah kandungan terperinci Bagaimanakah saya boleh melaksanakan pengesahan dengan ui-router dalam AngularJS?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!