angular2-guards相关内容

如何使用 Jasmine 对 angular2 的 canActivate 保护方法进行单元测试?

很抱歉提出此类问题.但是我找不到任何关于编写 canActivate 保护文件测试的博客或 youtube 教程.官方文档中也没有提到任何内容. 任何帮助将不胜感激. 解决方案 由于没有人回答我的问题,所以我粘贴我的代码片段以供参考,以帮助可能遇到这种情况的人. sampleLoggedIn.guard.ts 从'@angular/core'导入{Injectable};从' ..
发布时间:2022-01-11 18:34:09 其他开发

在 auth-guard 的 canActivate 中使用 BehaviorSubject

我想要实现的目标:我想使用 BehaviorSubject 在我的应用程序中共享身份验证状态.我使用身份验证状态,例如在 auth-guard 内防止用户在用户已经通过身份验证时访问登录/注册页面. 问题: 因为 BehaviorSubject 有一个初始值,它是假的(未登录),似乎 auth-guard 取这个第一个值,而不是等待 uid-sync. AuthInfo(授权状态存储) ..
发布时间:2021-11-09 01:17:08 其他开发

无法通过 angular2 中的服务传递数据

附注: 当我与我的同事交谈时,他们告诉我要正确使用 Role一旦请求,如果未通过身份验证则拒绝,否则返回数据到前端.但是,我在使用 Angular2 的 Guard 时陷入了困境. 应用可以: 访问我的路由,并且 Guard 阻止它,Guard 会向服务器发送请求以检查其身份验证. 请求服务器,当服务器返回statue:true和data:[somedatas]然后用模块的da ..

angular2:CanDeactivate 守卫

我创建了一个 CanDeactivate 守卫,它返回一个可观察的对象,并将其应用于加载在内部嵌套路由器出口中的组件.每当有人尝试导航到另一个 url 时,是否应该调用此守卫?我问这个是因为这在我的情况下不会发生. 就我而言,只有第一个“不同"的 URL 才会调用守卫.让我试着用一个例子来解释它.假设我总是返回 false 并且我试图从同一组件导航到不同的网址: /A -->守卫叫/B - ..
发布时间:2021-11-08 21:40:23 其他开发

Angular 2 在警卫中获取当前路线

我的项目中有一个 AccessGuard 类,它的工作是确定用户是否可以访问该路由.我使用 router.url 来获取当前路线,但 url 在导航到新路线之前返回路线,就像我在用户路线中一样,我点击候选路线,因此 url 返回用户而不是我希望验证对路线的访问的候选人这是我的路由文件: const routes:Routes = [{小路:'',组件:面板组件,canActivate:[Auth ..
发布时间:2021-11-08 21:34:02 其他开发

Angular2:Global Guard(用户必须始终登录)

我正在构建一个应用程序,未经身份验证的用户根本无法访问该应用程序. 我写了一个 LoggedInGuard,但现在我必须将 canActivate: [LoggedInGuard] 添加到我的路由器配置中的每条路由(除了登录组件). 有没有更好的方法让这个工作? 我的文件/模块布局如下: app/应用模块应用路由模块应用组件验证/认证模块认证路由模块登录组件联系人/联系人模块联 ..
发布时间:2021-11-08 21:28:48 其他开发

无法在angular2中通过服务传递数据

PS: 当我与同事交谈时,他们告诉我让罗尔斯(Role)正确 一次请求,如果未通过身份验证则拒绝,否则返回 数据到前端.但是,我被困在使用Angular2的Guard中. 应用程序这样做: 访问我的路由,并Guard阻止它,Guard向服务器发送请求以检查其身份验证. 请求server,当服务器返回statue:true和data:[somedatas]时,使用模块的dataS ..

多次调用angular2路由防护

我在我的一条私人路线上有一个路线警卫,当警卫返回false时,就不会再调用它了.下面的示例简化了如何重现这种情况. 当用户使用链接导航时: Link 警卫被呼叫,我在控制台中看到called消息,导航被取消(我在警卫中返回false): @Injectable() export class ..
发布时间:2020-08-31 19:07:58 其他开发

Angular 2角色和权限

我在项目中使用了angular2和laravel 5.3.在laravel中,当用户登录服务器时,将向该用户发送处理角度授权的权限.所以我写了一个保护措施,以保护无法访问的用户的路由. 这是我的警卫班级代码: export class AccessGuard implements CanActivate{ permissions; currentRoute; constructor(pri ..
发布时间:2020-08-13 07:12:24 其他开发

angular2:可以停用防护

我创建了一个CanDeactivate保护器,该保护器返回一个可观察到的值,并将其应用于加载在内部嵌套路由器出口中的组件.每当有人尝试导航到另一个URL时是否应调用此防护?我问这是因为我的情况没有发生. 就我而言,警卫只会被呼叫第一个“不同" URL.让我尝试用一​​个例子来解释它.假设我总是返回false,并且试图从同一个组件导航到不同的url: /A --> guard calle ..
发布时间:2020-08-13 02:52:44 其他开发

在auth-guard的canActivate中使用BehaviorSubject

我要实现的目标:我想使用BehaviorSubject在我的应用程序中共享身份验证状态.我使用身份验证状态内置在auth-guard中,以防止用户在已经通过身份验证时访问登录/注册页面. 问题::因为BehaviorSubject具有一个初始值,该初始值为false(未登录),所以auth-guard似乎采用了该第一个值,而不是等待uid-sync. AuthInfo (身份验证状态存 ..
发布时间:2020-08-12 20:34:19 其他开发

Angular 2获得当前路线

我的项目中有一个AccessGuard类,其作用是确定用户是否可以访问该路由.我使用了router.url来获取当前路线,但是在导航到新路线之前,URL返回了该路线,就像我在用户路线中一样,并且我点击了候选路线,因此该网址返回了用户而不是我想要的候选路线验证对路线的访问 这是我的路线文件: const routes:Routes = [ { path:'', componen ..
发布时间:2020-08-12 19:49:04 其他开发

Angular2:Global Guard(用户必须始终登录)

我正在构建一个应用程序,未经身份验证的用户根本无法访问. 我写了一个LoggedInGuard,但是现在我必须在路由器配置内的每个路由中添加canActivate: [LoggedInGuard](LoginComponent除外). 是否有更好的方法可以使它正常工作? 我的文件/模块布局如下: app/ AppModule AppRoutingModule A ..
发布时间:2020-08-10 01:04:09 其他开发

如何使Angular2 Service单身?

我正在尝试在我的应用程序中实现身份验证保护. IE;只有经过身份验证的用户才能访问我的应用的某些路由.我正在此处给出提示. 用户登录后,我将AuthService中的布尔值更改为true,以指示使用已登录.需要在应用程序的整个生命周期中保留该值. 在源代码下方给出: auth-guard.service.ts import { Injectable } from ' ..
发布时间:2020-07-23 07:03:55 其他开发