根据用户是否经过身份验证隐藏或显示链接-AngularJs

根据用户是否经过身份验证隐藏或显示链接-AngularJs,angularjs,Angularjs,我目前正在开发一个AngularJS应用程序,我遇到了一个障碍,如下所示 当用户提交时,我们有一个登录页面,我们调用web api并对用户进行身份验证,我们目前正在使用声明身份验证来设置cookie等,正如预期的那样,但是我遇到的问题是根据用户是否登录隐藏和显示链接。当我在MVC中工作时,通过在layout.cshtml中执行以下操作,我很容易就能解决这个问题: @if (User.Identity.IsAuthenticated) { Show additional links to us

我目前正在开发一个
AngularJS
应用程序,我遇到了一个障碍,如下所示

当用户提交时,我们有一个
登录
页面,我们调用web api并对用户进行身份验证,我们目前正在使用声明身份验证来设置cookie等,正如预期的那样,但是我遇到的问题是根据用户是否登录隐藏和显示链接。当我在MVC中工作时,通过在
layout.cshtml
中执行以下操作,我很容易就能解决这个问题:

@if (User.Identity.IsAuthenticated)
{
  Show additional links to user once they're authenticated
}
else
{
  Show the standard links
}

现在我使用的是纯HTML(没有
Razor
文件),但我在
Visual Studio
中构建了它,我很难理解如何根据用户是否在
.HTML
页面中通过
身份验证来显示某些链接

<div ng-if="user.identity.isAuthenticated">
    <a>Important link here</a>
</div>
<div ng-if="!user.identity.isAuthenticated">
    <a>Standard link here</a>
</div>

这里的重要链接
这里是标准链接

根据您的需求,类似的方法也会起作用。然而,由于这都是客户端的,所以它不会像服务器端那样安全。所以要小心。

嘿,卢卡,谢谢你的代码片段。你能详细说明一下你说的话吗?即不会像服务器端那样安全吗?@Luka我认为这对安全性来说并不重要,比如说链接是应用程序上受保护的路由。您可以将解析置于受保护状态,以验证用户是否已登录。如果服务器端的系统做得很好。如果用户设法绕过一个空模板,那么他只会看到一个空模板,这没有什么风险。当用户通过身份验证时,是否可以给用户一个令牌,然后检查令牌是否存在?如果没有,那么就将它们重定向到某个地方。你的所有代码都包含在客户端上,因此如果你有任何机密信息,你可能希望从服务器动态请求它,而不是将其放入静态html中。我不会在客户端上存储任何机密,我将保护需要身份验证的给定路由,因此,如果一个人碰巧能够猜到一个特定的URL,那么在给定的路由中,如果他们没有登录,我将重定向他们。