共计 455 个字符,预计需要花费 2 分钟才能阅读完成。
最初的成果:
申请的办法类型和 url 都被记录了下来,同响应一起。
设置断点来察看自定义 HTTP interceptor 运行时原理:
咱们自定义的 intercept 也是通过依赖注入的形式被注入到 httpInterceptor 的调度器里。
首先把 method 和 urlWithParams 从 request 里提取进去:
返回的 Observable pipe 办法里的 switchMap 里的处理函数,什么时候会被触发?
在响应式编程的世界里,不要太在意 switchMap 里指定的函数体是何时被调用的——充斥的全是 rxjs 的回调。
只须要留神 switchMap 里必须返回一个 Observable wrapper 对象。
再看这个 custom interceptor 什么时候被实例化的?
首先把零碎所有的 HTTP_INTERCEPTORS 注入的实现都取出来,放到数组里,而后应用数组的 reduceRight 办法,逐个调用之。
咱们自定义的 Custom HTTP Interceptor 赫然在数组里,所以能够被调用到:
更多 Jerry 的原创文章,尽在:” 汪子熙 ”:
正文完