【问题标题】:How to hide angular admin views如何隐藏角度管理视图
【发布时间】:2016-06-27 23:56:07
【问题描述】:

我想制作一个带有路由和 jwt auth 的 Angular 应用程序,但我不希望普通用户看到管理视图的 HTML 部分。用 laravel 和 Angular 做到这一点的最佳方法是什么?人们可以将“/partials/adminPage1.html”放在 url 上,并在未登录时查看部分内容。我的 API 是安全的,但我不希望 html 公开。

我想要它,所以这是公开的:

index.phppublicPartial1.htmlpublicPartial2.html

只有登录的用户才能使用这些文件:

admin.phpadminPartial1.htmladminPartial2.html

【问题讨论】:

  • 首先 - 有点不碍事。管理员视图是否公开并不重要。但是,如果您确实想隐藏它们,那么只需在 Laravel 中使用身份验证来检查用户是否是这些视图路由的管理员。

标签: javascript php angularjs laravel authentication


【解决方案1】:

您可以/需要通过以下几种方式解决此问题:

  1. 当“某人”放置“/partials/adminPage1.html”时,您需要检查服务器端(通过您正在检查其权限/角色的服务),然后使用 ReturnUrl 显示/重定向到适当的路由登录后重定向查询。

  2. 您可以通过首先从专用服务(按用户/角色/权限)请求它们从服务器下载路由来更加安全,但是您需要引导您的 AngularJS,因为路由需要加载 AngularJS 生命周期,因此在这种情况下,您将获取路由,在提供程序中构建它们,同时在从指定服务获取路由后引导 AngularJS。

* 我建议简单地实现选项 (1),它是直截了当且最常用的。 *

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-04-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-11
    • 2019-11-15
    • 1970-01-01
    相关资源
    最近更新 更多