问题标签 [auth-guard]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
574 浏览

vue.js - Vue router authentication-guard 无法识别我的 vuex 商店

我正在尝试使用 来保护全局 router.js 文件中的 vue 组件beforeEnter(),但是我在控制台中不断收到类型错误,这就是说

无法读取未定义的属性获取器

这是 router.js 文件的示例

注意:我相信问题出在 router.js 文件中,因为我在所有应用程序文件中调用我的 vuex getter 都没有问题。

0 投票
0 回答
866 浏览

angular - Ionic4 Angular AuthGuard 适用于主页,不适用于登录页面

我为我的网络应用程序创建了一个 Authguard,并分配了几个路由,如主页、登录、注册等。

预期行为:

  1. 主页 - 目的是在用户未登录时显示登录页面
  2. 登录,注册,忘记密码等 - 如果用户已经登录,则目的是将用户重定向到主页(如果用户在地址栏中键入 url,则避免将登录页面显示给已登录的用户)

实际行为:

  1. 如果没有登录的用户访问主页,他将被重定向到登录页面,但该页面不显示。

  2. 如果用户通过 URL 访问登录页面,则该页面不会再次显示。[无论用户是否登录]

  3. 如果我删除登录页面的 auth 保护,加载主页会将用户重定向到登录页面,并且页面会正确显示。

我的 AuthGuard 代码

编辑:路线:

我可以理解这里的问题是将 Authguard 分配给登录页面。但我无法确定导致问题的原因。你们中的任何人都可以指出我正确的方向吗?

0 投票
1 回答
83 浏览

angular - 如何匹配包含动态占位符的 url

所以我正在尝试使用角度添加路由保护,并且我有一个包含动态占位符的 URL

我想检查目标 URL 是否与此页面的 URL 相同

我试过了

条件永远不正确,,

我从状态快照中获取目标 url 并检查它是否与我拥有的某个路由匹配,然后检查角色,这意味着我不会为每条路由创建警卫,所以我想将目标 url 与我已经拥有的路由匹配,, 目标网址可以是 /4 或 /5 或 /6 ,, 我拥有的网址应该显示所有数字 4,5,6, .... 或其他

0 投票
2 回答
3901 浏览

angular - Angular:AuthGuard 中的浏览器刷新处理

我一直在尝试在我的 web 应用程序中正确实现 AuthGuard。目前,当我在应用程序中导航时,它工作正常。但是当我刷新时, authService.loggedIn 在 AuthService 完成执行之前被处理为 false 。

这是我的代码:

auth.guard.ts

身份验证服务

我在网上研究,他们提到了不同的方法(例如https://gist.github.com/codediodeio/3e28887e5d1ab50755a32c1540cfd121),但无法使其在我的应用程序上运行。

当我尝试这种方法时遇到的一个错误是“src/app/auth.guard.ts(20,8) 中的错误:错误 TS2339:属性 'take' 在类型 'Observable' 上不存在。” 我用

并不是

任何帮助/建议表示赞赏。

感谢大家。

0 投票
1 回答
808 浏览

angular - Angular - AuthGuard 正在重定向 iframe

我正在我的 Angular 应用程序中实现 iFrame。当我直接在 html 中提供 src url 时,应用程序工作正常并加载请求的 UI。但是,当我从后端获取 src url 并将其作为变量 auth 保护传递时,会将 url 重定向到登录页面。如何解决这个问题?

缺陷管理组件.html:

缺陷管理组件.ts:

AppRoutingModule.ts:

0 投票
2 回答
1555 浏览

laravel - laravel 5.7 中用于管理员保护的电子邮件验证

我想在管理员路由中实现必须验证,我有管理员防护和与管理员相关的所有路由,我如何在 Laravel 5.7 中为管理员防护实现此功能

0 投票
1 回答
2193 浏览

angular - candeactivate 与子路由不工作

我的路由如下:

路由中定义了组件,上面只是一个简单的快照。当我添加可以在用户路径中停用时,我将组件设为 null,但如果我将它添加到仪表板路径中,它运行良好。添加仪表板对我不起作用,因为我在仪表板上有多个孩子,如果用户也导航到他们,我需要显示确认。

不知道如何解决这个问题。

角度版本是 6.1.0

我关注了这个线程但没有帮助。

有人可以帮忙吗?

顺便说一句,上述路由定义是延迟加载的角度模块的一部分。

0 投票
0 回答
71 浏览

angular - 与 Angular 2+ AuthGuard 一起使用时,Ons Tabbar 混乱

我正在使用带有 Angular 6 的 Onsenui 当我使用 Onsenui Tabbar 指令而不使用 Angular AuthGuard 时,它可以正常工作。但是当我在组件上使用 AuthGuard 或说“canActivateChild:[AuthGuard]”时,每次单击其中一个带有 AuthGuard 的选项卡时,它都会显示此错误。

然后再次单击上一个选项卡 (initial-tab) ,它会给出这些错误。

  • 如何重现

添加此 AuthGuard 文件会产生错误。

0 投票
2 回答
2957 浏览

angular - 禁用角度路由器链接

我正在制作角度应用程序,我正在使用路由和身份验证保护..

堆栈闪电战

应用组件 html

在上面的代码中,我做了一个if条件,

显示如果showUser为假,则他无法查看主页中的用户选项卡..

TS

在这里我硬编码this.showUser为假,而在实际应用中,它将基于某些条件,例如,

因此条件为假,因此用户菜单未显示在视图中..

但是,如果我更改网址,例如

https://routing-angular-bjbjqd.stackblitz.io/users

仔细看我最后添加了用户..上面是重定向到用户页面..

我的要求是它不应该发生。

因为除非条件为真,否则它不应该被重定向到用户页面。

showUser除非是真的,否则如何防止网址更改?

0 投票
0 回答
487 浏览

typescript - JS:未处理的承诺拒绝:无法匹配任何路由。URL 段: 'resetPasswordRequest/:id' ;

我有这个 router.ts

在组件 ResetPassIdComponent 中,我使用以下代码获取 id:

我现在想,如何创建它在此组件 ResetPassIdComponent 中导航的 AuthGurad。

我尝试使用此代码但不起作用

更新:

}

在控制台中显示:resetPasswordRequest/123456789

但不要在此处导航组件。