使用自定义 HTTP Interceptor 记录 SAP Spartacus 发送的 OCC API 以及响应

简介: 使用自定义 HTTP Interceptor 记录 SAP Spartacus 发送的 OCC API 以及响应

最后的效果:

image.png



请求的方法类型和 url 都被记录了下来,同响应一起。


image.png


设置断点来观察自定义 HTTP interceptor 运行时原理:


image.png


我们自定义的 intercept 也是通过依赖注入的方式被注入到 httpInterceptor 的调度器里。

image.png



首先把 method 和 urlWithParams 从 request 里提取出来:



image.png

返回的 Observable pipe 方法里的 switchMap 里的处理函数,什么时候会被触发?


image.png


在响应式编程的世界里,不要太在意 switchMap 里指定的函数体是何时被调用的——充斥的全是 rxjs 的回调。


image.png


只需要注意 switchMap 里必须返回一个 Observable wrapper 对象。


再看这个 custom interceptor 什么时候被实例化的?




首先把系统所有的 HTTP_INTERCEPTORS 注入的实现都取出来,放到数组里,然后使用数组的 reduceRight 方法,逐一调用之。


我们自定义的 Custom HTTP Interceptor 赫然在数组里,所以可以被调用到:


相关文章
|
存储 JSON JavaScript
SAP ABAP MIME Repository 和 API 介绍试读版
SAP ABAP MIME Repository 和 API 介绍试读版
106 0
SAP ABAP MIME Repository 和 API 介绍试读版
|
存储 SQL API
SAP CRM 系统使用 API 和 open sql 读取订单长文本的两种方式比较
SAP CRM 系统使用 API 和 open sql 读取订单长文本的两种方式比较
|
XML 自然语言处理 JavaScript
SAP UI5 本地开发如何实现 XML 和 JavaScript 代码的自动完成和嵌入式 API 文档自动显示
SAP UI5 本地开发如何实现 XML 和 JavaScript 代码的自动完成和嵌入式 API 文档自动显示
111 0
|
JavaScript 前端开发 API
SAP UI5 应用如何采取 JavaScript 代码调用 OData API 读取满足过滤条件的业务数据($filter 操作)试读版
SAP UI5 应用如何采取 JavaScript 代码调用 OData API 读取满足过滤条件的业务数据($filter 操作)试读版
116 0
|
Web App开发 前端开发 API
关于 SAP UI5 Device API 的使用介绍
关于 SAP UI5 Device API 的使用介绍
|
JavaScript API 开发工具
SAP Marketing Cloud Restful API SDK 使用案例分享(一)
SAP Marketing Cloud Restful API SDK 使用案例分享
676 1
SAP Marketing Cloud Restful API SDK 使用案例分享(一)
|
存储 JavaScript 前端开发
如何为 SAP 电商云每个不同的 JavaScript Storefront 分别配置 API endpoint
如何为 SAP 电商云每个不同的 JavaScript Storefront 分别配置 API endpoint
154 0
如何为 SAP 电商云每个不同的 JavaScript Storefront 分别配置 API endpoint
|
JavaScript API 开发工具
SAP Marketing Cloud Restful API SDK 使用案例分享(二)
SAP Marketing Cloud Restful API SDK 使用案例分享
114 0
SAP Marketing Cloud Restful API SDK 使用案例分享(二)
|
存储 SQL Kubernetes
如何使用 API 的方式消费 SAP Commerce Cloud 的订单服务
在SAP官网 help.sap.com 上根据关键字 commerce 搜索,结果列表里会显示出好几个名称相近的产品,这难免会让一些 SAP commerce (电商云)的初学者感到有点疑惑。
127 0
如何使用 API 的方式消费 SAP Commerce Cloud 的订单服务
|
存储 机器学习/深度学习 JSON
如何在 Web 应用里消费 SAP Leonardo 的机器学习 API
本文选择使用 SAP Leonardo 里的 一个Product Image Classification API,即给定一张产品的图片,该 API 能识别出此产品的类别。
156 0
如何在 Web 应用里消费 SAP Leonardo 的机器学习 API