angular2-guards相关内容
很抱歉提出此类问题.但是我找不到任何关于编写 canActivate 保护文件测试的博客或 youtube 教程.官方文档中也没有提到任何内容. 任何帮助将不胜感激. 解决方案 由于没有人回答我的问题,所以我粘贴我的代码片段以供参考,以帮助可能遇到这种情况的人. sampleLoggedIn.guard.ts 从'@angular/core'导入{Injectable};从'
..
我有一个像下面这样的路线守卫 @Injectable()导出类 AuthGuard 实现 CanActivate {构造函数(私有路由器:路由器,私有 authenticationSvc:AuthenticationService){}canActivate(): Observable{返回 this.authenticationSvc.getAuthenticatedUser().map(r=
..
我想要实现的目标:我想使用 BehaviorSubject 在我的应用程序中共享身份验证状态.我使用身份验证状态,例如在 auth-guard 内防止用户在用户已经通过身份验证时访问登录/注册页面. 问题: 因为 BehaviorSubject 有一个初始值,它是假的(未登录),似乎 auth-guard 取这个第一个值,而不是等待 uid-sync. AuthInfo(授权状态存储)
..
附注: 当我与我的同事交谈时,他们告诉我要正确使用 Role一旦请求,如果未通过身份验证则拒绝,否则返回数据到前端.但是,我在使用 Angular2 的 Guard 时陷入了困境. 应用可以: 访问我的路由,并且 Guard 阻止它,Guard 会向服务器发送请求以检查其身份验证. 请求服务器,当服务器返回statue:true和data:[somedatas]然后用模块的da
..
在每次请求之前,我想确保有一个可用的用户配置文件.我使用 canActivateChild 守卫来做到这一点. 根据 angular2 的文档,可以返回一个 observable:https://angular.io/api/router/CanActivateChild app.routes.ts 导出常量路由:Routes = [{小路: '',canActivateChild:
..
我创建了一个 CanDeactivate 守卫,它返回一个可观察的对象,并将其应用于加载在内部嵌套路由器出口中的组件.每当有人尝试导航到另一个 url 时,是否应该调用此守卫?我问这个是因为这在我的情况下不会发生. 就我而言,只有第一个“不同"的 URL 才会调用守卫.让我试着用一个例子来解释它.假设我总是返回 false 并且我试图从同一组件导航到不同的网址: /A -->守卫叫/B -
..
我的项目中有一个 AccessGuard 类,它的工作是确定用户是否可以访问该路由.我使用 router.url 来获取当前路线,但 url 在导航到新路线之前返回路线,就像我在用户路线中一样,我点击候选路线,因此 url 返回用户而不是我希望验证对路线的访问的候选人这是我的路由文件: const routes:Routes = [{小路:'',组件:面板组件,canActivate:[Auth
..
我正在构建一个应用程序,未经身份验证的用户根本无法访问该应用程序. 我写了一个 LoggedInGuard,但现在我必须将 canActivate: [LoggedInGuard] 添加到我的路由器配置中的每条路由(除了登录组件). 有没有更好的方法让这个工作? 我的文件/模块布局如下: app/应用模块应用路由模块应用组件验证/认证模块认证路由模块登录组件联系人/联系人模块联
..
PS: 当我与同事交谈时,他们告诉我让罗尔斯(Role)正确 一次请求,如果未通过身份验证则拒绝,否则返回 数据到前端.但是,我被困在使用Angular2的Guard中. 应用程序这样做: 访问我的路由,并Guard阻止它,Guard向服务器发送请求以检查其身份验证. 请求server,当服务器返回statue:true和data:[somedatas]时,使用模块的dataS
..
如何获取用户试图在角度2的canActivate防护中打开的路线? 我如何使监视每个路由参数的变化,例如.更改路线内的ID? import { Injectable } from '@angular/core'; import {Observable, Observer, Subject} from "rxjs/Rx"; @Injectable() export clas
..
我在我的一条私人路线上有一个路线警卫,当警卫返回false时,就不会再调用它了.下面的示例简化了如何重现这种情况. 当用户使用链接导航时: Link 警卫被呼叫,我在控制台中看到called消息,导航被取消(我在警卫中返回false): @Injectable() export class
..
我在项目中使用了angular2和laravel 5.3.在laravel中,当用户登录服务器时,将向该用户发送处理角度授权的权限.所以我写了一个保护措施,以保护无法访问的用户的路由. 这是我的警卫班级代码: export class AccessGuard implements CanActivate{ permissions; currentRoute; constructor(pri
..
因此,我正在尝试通过使用防护措施来保护对多条路线的访问.我正在使用以下路线来做到这一点: const adminRoutes : Routes = [ { path: 'admin', component: AdminComponent, canActivate: [ AuthGuardService ], children : [ {
..
我创建了一个CanDeactivate保护器,该保护器返回一个可观察到的值,并将其应用于加载在内部嵌套路由器出口中的组件.每当有人尝试导航到另一个URL时是否应调用此防护?我问这是因为我的情况没有发生. 就我而言,警卫只会被呼叫第一个“不同" URL.让我尝试用一个例子来解释它.假设我总是返回false,并且试图从同一个组件导航到不同的url: /A --> guard calle
..
我要实现的目标:我想使用BehaviorSubject在我的应用程序中共享身份验证状态.我使用身份验证状态内置在auth-guard中,以防止用户在已经通过身份验证时访问登录/注册页面. 问题::因为BehaviorSubject具有一个初始值,该初始值为false(未登录),所以auth-guard似乎采用了该第一个值,而不是等待uid-sync. AuthInfo (身份验证状态存
..
我的项目中有一个AccessGuard类,其作用是确定用户是否可以访问该路由.我使用了router.url来获取当前路线,但是在导航到新路线之前,URL返回了该路线,就像我在用户路线中一样,并且我点击了候选路线,因此该网址返回了用户而不是我想要的候选路线验证对路线的访问 这是我的路线文件: const routes:Routes = [ { path:'', componen
..
我正在构建一个应用程序,未经身份验证的用户根本无法访问. 我写了一个LoggedInGuard,但是现在我必须在路由器配置内的每个路由中添加canActivate: [LoggedInGuard](LoginComponent除外). 是否有更好的方法可以使它正常工作? 我的文件/模块布局如下: app/ AppModule AppRoutingModule A
..
我正在尝试在我的应用程序中实现身份验证保护. IE;只有经过身份验证的用户才能访问我的应用的某些路由.我正在此处给出提示. 用户登录后,我将AuthService中的布尔值更改为true,以指示使用已登录.需要在应用程序的整个生命周期中保留该值. 在源代码下方给出: auth-guard.service.ts import { Injectable } from '
..
在每次请求之前,我都要确保有可用的用户个人资料.我使用canActivateChild守护程序来做到这一点. 根据angular2的文档,可以返回可观察到的结果: https://angular.io /api/router/CanActivateChild app.routes.ts export const routes: Routes = [ { path: '
..
我有一个像下面这样的路线保护 @Injectable() 导出类AuthGuard实现CanActivate { 构造函数(私有路由器:路由器,私有authenticationSvc:AuthenticationService){} canActivate():Observable { 返回this.authenticationSvc.getAuthenti
..