我正在考虑使用Angular和远程服务器进行身份验证的方法。通常我在本地服务器上做的事情,就像他们在MEAN.IO中所做的那样,检查是否有用户,是否将它放在全局窗口上,这就是我知道用户是否经过身份验证的方式。
例如在laravel:
@if(Auth::check())
<script>
var user= [[[Auth::user()]]]
</script>
@endif
并且它在刷新后仍然存在,因为我也在运行时检查它。
但现在服务器是远程的,我必须做一些事情,比如获取一些url / getUser的请求。但是,自从AngularJS以来,这并不好 组件必须等待响应返回导致不一致和 发展开销。
那我该怎么做?
答案 0 :(得分:0)
您可以使用&#34;解决&#34;为了避免改变你当前的逻辑。
定义执行检查的安全服务,让我们说Security.getUser()并将其添加到您需要保护的每条路由的解析中。这样,只有在用户被检查后才会加载您的控制器。如果服务器将返回身份验证错误,请重定向到登录屏幕。
你可以从我给出的安全角度讲话中查看我的幻灯片goo.gl/kMvoFj 或者浏览我的github存储库(它仍然非常原始,但主要的想法就在那里)ng-secure,我认为它可能对你有帮助。