Angularjs 身份验证签入的最佳位置在哪里?

Angularjs 身份验证签入的最佳位置在哪里?,angularjs,authentication,angular-ui-router,Angularjs,Authentication,Angular Ui Router,在构建Angular应用程序时,您必须登录才能查看任何页面,在哪里进行身份验证检查是最好的?我总是在app.run的$stateChangeStart下设置一个check-in,但我看到一些人使用UI路由器并决心强制执行检查。理想的景点在哪里,如果有的话,原因是什么?我使用了您建议的所有内容。我喜欢听直接从文档中获取的$stateChangeStart事件: $rootScope.$on('$stateChangeStart', function(event, toState, toParam

在构建Angular应用程序时,您必须登录才能查看任何页面,在哪里进行身份验证检查是最好的?我总是在app.run的$stateChangeStart下设置一个check-in,但我看到一些人使用UI路由器并决心强制执行检查。理想的景点在哪里,如果有的话,原因是什么?

我使用了您建议的所有内容。我喜欢听直接从文档中获取的
$stateChangeStart
事件:

$rootScope.$on('$stateChangeStart', 
function(event, toState, toParams, fromState, fromParams){ ... })
然后可以使用
event.preventDefault()解析任何http调用

拦截器是另一种选择——只需谷歌“Angularjs拦截器”,我相信你会找到一个很好的例子。然而,虽然我只花了有限的时间使用拦截器,但我发现很难克服未经身份验证的用户尝试访问受保护页面时产生的短暂页面浏览