Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从角路径保护器发出的Web呼叫

从角路径保护器发出的Web呼叫
EN

Stack Overflow用户
提问于 2017-07-18 11:08:51
回答 1查看 7.2K关注 0票数 5

有人能帮我解决为什么在从调用返回结果后,角保护内的异步调用不会激活路由吗?我尝试了几种方法,利用承诺和观察有限的运气。我还找到了这个github问题,特别是albakov推荐的。对我来说,注意下面的代码片段是很重要的。我看到控制台中包含所有正确值的控制台消息,我也能够在服务器端api调用中中断。结果被传递到可观察到的canActivate警卫返回,但路由没有按预期激活。

具有调用api并将_isAuthorized主题与结果绑定的属性的服务方法:

代码语言:javascript
运行
AI代码解释
复制
private _isAuthorized: ReplaySubject<boolean> = new ReplaySubject(1);
get isAuthorized() { return this._isAuthorized.asObservable(); }

checkAuthority(id: number) {
    return this._http.get(this._apiUrl).toPromise().then((response) => {
        console.log(response + ' I resolved!');
        if (response.status === 200)
            this._isAuthorized.next(true);
    });

消费保护可以激活方法:

代码语言:javascript
运行
AI代码解释
复制
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): any {
  let id: number = this.getId();

  if (!this._oauthService.hasValidIdToken()) {
    this._router.navigate([`/login/${id}`]);
    return Observable.of(false);
  }

  this._myService.checkAuthority(id);
  return this._myService.isAuthorized.first();
}

没有任何类型的控制台错误发生,页面只是从来没有路由后,可观察布尔值的解析为真。

如果我将从登录组件重定向到受保护(受保护的)路由更改为硬重定向(即:)(即: window.location.href),而不是router.navigate调用,那么上面的代码就能工作。如果没有这个从登录组件的硬重定向,路由器将取消导航,如果我启用跟踪,则在解析api调用后取消导航到受保护的路由。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-07-20 06:20:16

角2-路由-可观测的CanActivate工作

只要在守卫中返回可观察(Observable<boolean>),它就能工作了!

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45175179

复制
相关文章
Flask web 开发出现错误:Typ
没有发现普通都语法错误,然后一一比对官方教程里面的代码,发现是在“@bp.route('/<int:id>/delete', methods=('POST'))”这一行代码里面methods的赋值有问题,要求是一个可迭代对象;但是现在的methods并不是一个元祖。所以要在mehtods赋值的第一个元素后面跟随一个逗号,即更改为"@bp.route('/<int:id>/delete', methods=('POST',))",然后就运行成功了。
py3study
2020/01/20
4680
web项目中的路径问题
请求的路径是:http://localhost:8080/projectname/getData.do
大忽悠爱学习
2021/11/15
5960
三角形的最小路径和
动态规划 package main import ( "fmt" "math" ) //给定一个三角形,找出自顶向下的最小路径和。每一步只能移动到下一行中相邻的结点上。 // //相邻的结点 在这里指的是 下标 与 上一层结点下标 相同或者等于 上一层结点下标 + 1 的两个结点。 // // // //例如,给定三角形: // //[ //[2], //[3,4], //[6,5,7], //[4,1,8,3] //] //自顶向下的最小路径和为 11(即,2 + 3 + 5 + 1
用户7962184
2020/11/20
2310
vue3 如何从槽发出数据
你将一个方法传递到槽中,然后在槽中调用那个方法。您不能发出事件,因为插槽与父组件共享相同的上下文(或作用域)。
公众号---人生代码
2020/09/15
1.9K0
三角形最小路径和
相邻的结点 在这里指的是 下标 与 上一层结点下标 相同或者等于 上一层结点下标 + 1 的两个结点。
你的益达
2020/08/05
4270
呼叫中心FAQ_客服呼叫中心介绍
英文是否如此?VDN(Virtual Directory Number)VEC(Vector) HUNT(Hunt Group)
全栈程序员站长
2022/11/16
8.6K1
在 Vue 中,如何从插槽中发出数据
代码部署后可能存在的BUG没法实时知道,事后为了解决这些BUG,花了大量的时间进行log 调试,这边顺便给大家推荐一个好用的BUG监控工具 Fundebug。
前端小智@大迁世界
2020/08/11
3.1K0
java 动态获取web应用的部署路径[通俗易懂]
參考:http://blog.sina.com.cn/s/blog_6f3da9650101d70r.html
全栈程序员站长
2022/07/08
5140
使用Web日志还原攻击路径
日志文件是服务器提供的非常有价值的信息,几乎所有的服务器、服务和应用程序都提供某种类型的日志记录,用来记录服务或应用程序运行时发生的事件和操作。
Bypass
2020/02/14
1.6K0
使用Web日志还原攻击路径
图解经典电路之漏电保护器
这段时间事情实在太多,没来得及更新专栏,实在对不住大家。今天我们来聊一聊家庭必备神器-漏电保护器。如下图。
用户5759494
2019/07/05
1.3K0
图解经典电路之漏电保护器
Hypervisor Necromancy;恢复内核保护器(2)
在我们的最小实现中,我们不会启用 IRQ 或 FIQ。 此外,我们不会实施任何 EL0 应用程序或执行 `svc` 从我们的内核调用,结果所有 VBAR_EL1 条目都设置为 导致系统挂起(无限循环)。同样,对于 EL3,我们只期望 来自较低级别 AArch64 模式的同步异常。结果只有 相应的“vectors_el3”条目(+0x400)已设置,所有其他条目都会导致 系统挂起与 EL1 向量一样。异常处理程序保存当前 处理器状态(通用和状态寄存器)并调用 第二阶段处理程序。我们遵循`smc`调用约定[05
franket
2022/02/09
2.6K0
Hypervisor Necromancy;恢复内核保护器(1)
--[ 0 - 简介 直到最近,为了在运行时攻击者破坏整个系统 发现并利用内核漏洞。这使他们能够执行 各种动作;在内核上下文中执行恶意代码, 修改内核数据结构以提升权限,访问受保护的数据, 等已经引入了各种缓解措施来防止此类 动作和管理程序也被使用,除了他们的 为实现这一目标而使用传统的虚拟化支持。在里面 ARM 虚拟化促进了 Android 生态系统 扩展,允许供应商/OEM 实施自己的保护 功能/逻辑。 另一方面,Android 设备已普遍成为主要的 PITA 由于引入的 OEM 和供应商种类繁多,
franket
2022/02/09
3K0
JavaScript对象的呼叫转移
声明:此文以通俗易懂的模式讲解JavaScript语言中call、apply运行原理。 非业内人士或未成年人请点左上角按扭及时离开以避免走火入魔。 事实上类似于call和apply这样的功能完全是程序设计中的糟粕, 代码之中使用这两个函数的数量和代码难以理解的程序是成正比的。资深的前端狗们可以闭上眼睛回忆一下, 当读到别人写的代码之中有大量的call和apply调用时要寻找代码的逻辑方向是不是会费劲的多。但是, 假如是自己写代码, 又能灵活运行call和apply, 那用起来肯定能爽翻天。 因此,这两个方法
用户1608022
2018/04/11
8760
JavaScript对象的呼叫转移
[Leetcode][python]Triangle/三角形最小路径和
参考:https://shenjie1993.gitbooks.io/leetcode-python/120%20Triangle.html 将一个二维数组排列成金字塔的形状,找到一条从塔顶到塔底的路径,使路径上的所有点的和最小,从上一层到下一层只能挑相邻的两个点中的一个。 注意点: 最好将空间复杂度控制在O(n),n是金字塔的高度
蛮三刀酱
2019/03/26
7550
WEB-INF 有关的目录路径问题总结
1、资源文件只能放在WebContent下面,如 CSS,JS,image等.放在WEB-INF下引用不了. 2、页面放在WEB-INF目录下面,这样可以限制访问,提高安全性.如JSP,html 3、只能用转向方式来访问WEB-INF目录下的JSP,不用采用重定向的方式请求该目录里面的任何资源.如图:index.jsp >>  main.jsp 4、WEB-INF目录下文件访问资源文件时,可以忽略WEB-INF这一层目录.如main.jsp 要用css目录里的一个css文件.     <link rel
老白
2018/03/19
1.7K0
WEB-INF 有关的目录路径问题总结
跃迁:从技术到管理的硅谷路径
2.“你不能每次都给答案,你应该试着用引导的方式让对方学会自己找答案” 3.从给答案到做引导:
硬核项目经理
2019/08/06
1.3K1
动态规划|约束条件下的三角最短路径
这篇文章总结了题目如何符合动态规划的特点,进而如何利用动态规划求解三角约束条件下的最短路径。 1 题目 Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent numbers on the row below. For example, given the following triangle [ [2], [3,4], [6,5,7],
double
2018/04/02
9040
从Splay到动态优化的新路径
摘要:考虑在二叉搜索树中执行搜索序列的任务。 在每次搜索之后,允许算法以与执行的重构量成比例的成本任意地重构树。 执行的成本是搜索所花费的时间和使用重组操作优化这些搜索所花费的时间的总和。 这个概念是由Sleator和Tarjan通过计算和猜想在(JACM,1985)中引入的。 算法Splay是一个严苛的过程,用于在将搜索到的项目移动到树顶部时执行调整。 这种被称为“动态最优性”的猜想是,展开的成本总是在用于执行搜索的最佳算法的恒定因子内。 这个猜想一直持续到今天。 在这项工作中,我们试图为动态最优性猜想的证明奠定基础。
罗大琦
2019/07/18
7790
从补丁追溯漏洞触发路径
查看github中的补丁信息Fixed chunk size parsing. · nginx/nginx@818807d (github.com)如下:
FB客服
2021/11/08
7200
从补丁追溯漏洞触发路径
点击加载更多

相似问题

角航路警卫-发出呼叫签名

11

从ListView问题发出呼叫

10

从睡眠模式发出呼叫

12

从卡片视图发出呼叫

12

如何从PWA发出移动呼叫

19
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档