AngularJs - melhor maneira de limitar o acesso a usuários "logados"
Eu estou lutando com a criação de um sistema de login para um aplicativo que estou criando.
Eu sou capaz de definir cookies para quando o usuário está logado ou desconectado. Eu não acho que testar todas as visualizações se o usuário está logado é uma solução muito elegante, e eu tenho medo que uma página aqui e ali possa cair através das rachaduras (é um aplicativo bastante grande).
Eu estou pensando que a melhor maneira seria interceptar as alterações de rota de alguma forma e verificar se o usuário está logado, caso contrário, enviá-los para uma página de login / criar usuário. Eu encontrei alguns métodos, mas nada parece ser oficialmente documentado. Alguém já usou esse tipo de método em um caso do mundo real e foi eficaz?
Meu arquivo de rota é assim:
'use strict';
app.config(['$routeProvider', function ($routeProvider) {
$routeProvider
// LOGIN
.when('/User/LoginUser', {templateUrl: 'views/user/login.html',controller: 'loginCtrl'})
....... more routes here.......
// DEFAULT
.otherwise({redirectTo: '/'});
}]);
Qualquer ajuda ou sugestão, ou aponta para exemplos documentados do mundo real de como eu faria algo assim, seria muito apreciada!