2016-01-05 2 views
1

При построении приложения с угловыми углами, где вы должны войти в систему, чтобы увидеть любую страницу, где лучше всего разместить проверки подлинности? Я всегда делал чек в app.run в $ stateChangeStart, но я вижу, что некоторые люди используют UI-маршрутизатор и разрешают принудительно проверять. Где идеальное место, если оно есть и почему?Где лучшее место для проверки подлинности в угловом?

ответ

1

Я использую немного всего, что вы предложили. Я люблю слушать для $stateChangeStart события, как это принято непосредственно из документации:

$rootScope.$on('$stateChangeStart', 
function(event, toState, toParams, fromState, fromParams){ ... }) 

Вы можете использовать event.preventDefault(); и решительность любой HTTP вызов, прежде чем решить, что делать.

Перехватчики - еще один вариант - просто Google «Angularjs Interceptors», и я уверен, что вы найдете хороший пример. Однако, хотя я провел некоторое время с Interceptors, я обнаружил, что было трудно преодолеть краткие проблески страницы, которые привели к тому, что пользователи, не прошедшие проверку подлинности, попытались бы получить доступ к защищенной странице.