问题标签 [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.
vue.js - Vue router authentication-guard 无法识别我的 vuex 商店
我正在尝试使用 来保护全局 router.js 文件中的 vue 组件beforeEnter()
,但是我在控制台中不断收到类型错误,这就是说
无法读取未定义的属性获取器
这是 router.js 文件的示例
注意:我相信问题出在 router.js 文件中,因为我在所有应用程序文件中调用我的 vuex getter 都没有问题。
angular - Ionic4 Angular AuthGuard 适用于主页,不适用于登录页面
我为我的网络应用程序创建了一个 Authguard,并分配了几个路由,如主页、登录、注册等。
预期行为:
- 主页 - 目的是在用户未登录时显示登录页面
- 登录,注册,忘记密码等 - 如果用户已经登录,则目的是将用户重定向到主页(如果用户在地址栏中键入 url,则避免将登录页面显示给已登录的用户)
实际行为:
如果没有登录的用户访问主页,他将被重定向到登录页面,但该页面不显示。
如果用户通过 URL 访问登录页面,则该页面不会再次显示。[无论用户是否登录]
如果我删除登录页面的 auth 保护,加载主页会将用户重定向到登录页面,并且页面会正确显示。
我的 AuthGuard 代码
编辑:路线:
我可以理解这里的问题是将 Authguard 分配给登录页面。但我无法确定导致问题的原因。你们中的任何人都可以指出我正确的方向吗?
angular - 如何匹配包含动态占位符的 url
所以我正在尝试使用角度添加路由保护,并且我有一个包含动态占位符的 URL
我想检查目标 URL 是否与此页面的 URL 相同
我试过了
条件永远不正确,,
我从状态快照中获取目标 url 并检查它是否与我拥有的某个路由匹配,然后检查角色,这意味着我不会为每条路由创建警卫,所以我想将目标 url 与我已经拥有的路由匹配,, 目标网址可以是 /4 或 /5 或 /6 ,, 我拥有的网址应该显示所有数字 4,5,6, .... 或其他
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' 上不存在。” 我用
并不是
任何帮助/建议表示赞赏。
感谢大家。
angular - Angular - AuthGuard 正在重定向 iframe
我正在我的 Angular 应用程序中实现 iFrame。当我直接在 html 中提供 src url 时,应用程序工作正常并加载请求的 UI。但是,当我从后端获取 src url 并将其作为变量 auth 保护传递时,会将 url 重定向到登录页面。如何解决这个问题?
缺陷管理组件.html:
缺陷管理组件.ts:
AppRoutingModule.ts:
laravel - laravel 5.7 中用于管理员保护的电子邮件验证
我想在管理员路由中实现必须验证,我有管理员防护和与管理员相关的所有路由,我如何在 Laravel 5.7 中为管理员防护实现此功能
angular - candeactivate 与子路由不工作
我的路由如下:
路由中定义了组件,上面只是一个简单的快照。当我添加可以在用户路径中停用时,我将组件设为 null,但如果我将它添加到仪表板路径中,它运行良好。添加仪表板对我不起作用,因为我在仪表板上有多个孩子,如果用户也导航到他们,我需要显示确认。
不知道如何解决这个问题。
角度版本是 6.1.0
我关注了这个线程但没有帮助。
有人可以帮忙吗?
顺便说一句,上述路由定义是延迟加载的角度模块的一部分。
angular - 与 Angular 2+ AuthGuard 一起使用时,Ons Tabbar 混乱
我正在使用带有 Angular 6 的 Onsenui 当我使用 Onsenui Tabbar 指令而不使用 Angular AuthGuard 时,它可以正常工作。但是当我在组件上使用 AuthGuard 或说“canActivateChild:[AuthGuard]”时,每次单击其中一个带有 AuthGuard 的选项卡时,它都会显示此错误。
然后再次单击上一个选项卡 (initial-tab) ,它会给出这些错误。
- 如何重现
添加此 AuthGuard 文件会产生错误。
angular - 禁用角度路由器链接
我正在制作角度应用程序,我正在使用路由和身份验证保护..
在上面的代码中,我做了一个if条件,
显示如果showUser
为假,则他无法查看主页中的用户选项卡..
TS:
在这里我硬编码this.showUser
为假,而在实际应用中,它将基于某些条件,例如,
因此条件为假,因此用户菜单未显示在视图中..
但是,如果我更改网址,例如
https://routing-angular-bjbjqd.stackblitz.io/users
仔细看我最后添加了用户..上面是重定向到用户页面..
我的要求是它不应该发生。
因为除非条件为真,否则它不应该被重定向到用户页面。
showUser
除非是真的,否则如何防止网址更改?
typescript - JS:未处理的承诺拒绝:无法匹配任何路由。URL 段: 'resetPasswordRequest/:id' ;
我有这个 router.ts
在组件 ResetPassIdComponent 中,我使用以下代码获取 id:
我现在想,如何创建它在此组件 ResetPassIdComponent 中导航的 AuthGurad。
我尝试使用此代码但不起作用
更新:
}
在控制台中显示:resetPasswordRequest/123456789
但不要在此处导航组件。