【发布时间】:2016-07-27 10:28:29
【问题描述】:
我正在尝试使用 ui-router 和 angularJS 处理身份验证,我想实现以下正常情况:
- 如果(用户未通过身份验证 && 状态需要身份验证)则 进入“登录”状态
- else if (用户已通过身份验证 && 状态不需要身份验证) then
进入“主要”状态 - 否则转到用户请求的状态。
我以一种我不确定是否正确的方式实现了它,我需要你们在这里进行一些验证。
我有一个解析函数,用于检索用户是否从服务器进行身份验证的信息,如果它被拒绝,那么我将用户发送到 $stateChangeError 中的“登录”状态。如果它解决了,我会处理 $stateChangeSuccess 中的其他逻辑。
但据我了解,该信息仅在 $stateChangeSuccess 中可用,而在 $stateChangeStart 中不可用,因此,如果我在 $stateChangeSuccesses 中实现上面编写的逻辑,则某些页面将在过渡结束前闪烁。
请指教。有没有其他方法或方法来改进这个解决方案?我想为每个状态制作一个解析功能,检查用户是否经过身份验证并在那里进行路由。
谢谢。
【问题讨论】:
标签: angularjs authentication angular-ui-router