关于 SAP 电商云首页加载时触发的 OCC API 请求
当我访问本地启动的 SAP Spartacus Storefront 时,在 Chrome 开发者工具里观察到总共 23 个 OCC API 调用:
http://localhost:4200/electronics-spa/en/USD/
这23个 OCC API 调用从功能上可以分成三组:
第一组:包含一个请求
/occ/v2/electronics-spa/cms/pages?lang=en&curr=USD
Cache-Control in request headers: no-cache
客户端 HTTP 请求 cache-control 的值 为 no-cache,告诉服务器,在发送响应给客户端之前,先进行缓存有效性验证(cache validation)
服务器返回的响应头部字段 Cache-Control 的值:private
根据下面这篇文档,带有 cache-control:private 的响应,不应该在 CDN 里缓存。
在该 pages OCC API 调用结束之后,其他 22 个 OCC API 才能触发。
第二组:包含五个请求
(1) /occ/v2/electronics-spa/languages?lang=en&curr=USD
request header:Cache-Control: no-cache
response header:public, max-age=1800
(2) /occ/v2/electronics-spa/currencies?lang=en&curr=USD
request header:Cache-Control: no-cache
response header:public, max-age=1800
(3) /occ/v2/electronics-spa/cms/components?fields=DEFAULT¤tPage=0&pageSize=26&componentIds=AllBrandsCategoryLink%2CCanonBrandCategoryLink%2CSonyBrandCategoryLink%2CKodakBrandCategoryLink%2CSamsungBrandCategoryLink%2CToshibaBrandCategoryLink%2CFujifilmBrandCategoryLink%2CKingstonBrandCategoryLink%2CIciduBrandCategoryLink%2CTDKBrandCategoryLink%2CSweexBrandCategoryLink%2CDigitalCamerasCategoryLink%2CDigitalCompactsCategoryLink%2CDigitalSLRCategoryLink%2CFilmCamerasCategoryLink%2CHandheldCamcordersCategoryLink%2CWebcamsCategoryLink%2CCameraAccessoriesCategoryLink%2CCamerasFlashesCategoryLink%2CTripodsCategoryLink%2CCameraLensesCategoryLink%2CFlashMemoryCategoryLink%2CPowerSuppliesCategoryLink%2CColourFilmsCategoryLink%2CBlackAndWhiteFilmsCategoryLink%2CBlankVideotapesCategoryLink&lang=en&curr=USD
request header:Cache-Control: no-cache
response header:private
(4) /occ/v2/electronics-spa/cms/components?fields=DEFAULT¤tPage=0&pageSize=8&componentIds=AboutSAPCommerceLink%2CFAQLink%2CVisitSAPLink%2CContactUsLink%2CAgileCommerceBlogLink%2CLinkedInLink%2CFacebookLink%2CTwitterLink&lang=en&curr=USD
request header:Cache-Control: no-cache
response header:private
(5) /occ/v2/electronics-spa/users/anonymous/consenttemplates?lang=en&curr=USD
request header:Cache-Control: no-cache
response header:no-cache, no-store, max-age=0, must-revalidate
第三组:包含 17 个请求
/occ/v2/electronics-spa/products/?fields=code,configurable,configuratorType,name,summary,price(formattedValue),images(DEFAULT,galleryIndex),baseProduct&lang=en&curr=USD
request header:Cache-Control: no-cache
response header:private, max-age=120
我们可以在 Chrome 开发者工具里很容易观察到浏览器里这些 OCC API 并发请求的排队情况。
根据 Google Chrome 的帮助文档,这种 Queueing 和 Stalled 的排队情况,发生在客户端。
更多Jerry的原创文章,尽在:“汪子熙”:
关于 SAP 电商云首页加载时触发的 OCC API 请求相关推荐
- SAP 电商云 Spartacus UI 产品明细页面路由路径的自定义配置
如下图所示,为了减少 SAP 电商云 Spartacus 客户实施时不必要的配置,Spartacus 将不少页面的路由路径的默认配置,定义在如下的 default-routing-config.ts ...
- 在 SAP 电商云 Spartacus UI 里手动注入 module 的几种排列组合
先把所有的排列组合罗列如下: (1) 通过构造函数注入 QuickOrderFacade,但不调用其方法 (2) 通过构造函数注入 QuickOrderFacade,调用其方法 (3) 手动通过 in ...
- SAP 电商云 Spartacus UI Proxy Facade 的一个实际例子
如何理解 SAP 电商云 Spartacus UI 中的 proxy facade? Jerry 这篇文章什么是 SAP 电商云 Spartacus UI 的 proxy façade提供了理论上的解 ...
- SAP ABAP 业务开关和 SAP 电商云的 Feature Level
这是 Jerry 2021 年的第 72 篇文章,也是汪子熙公众号总共第 349 篇原创文章. 基于 ABAP 技术栈的 SAP 产品,客户可以通过安装 Enhancement Package(增强包 ...
- SAP 电商云 Spartacus UI 产品搜索结果的设计明细
我们使用如下 url 访问 SAP 电商云 Spartacus UI 产品搜索页面: http://localhost:4000/electronics-spa/en/USD/search/sony ...
- Mobile first 设计思路在 SAP 电商云 Spartacus UI 中的设计体现一例
关于 Mobile First 的概念,请查看我这篇文章:什么是前端开发中的 mobile first 策略. 下图是 SAP 电商云 Spartacus UI 的搜索结果页面: 其布局设计:temp ...
- SAP 电商云 Spartacus UI ComponentDataProvider defer 工厂函数
为什么 this.componentService.getItems 最后就触发到 Component-data.provider.ts 工厂函数的执行了? 29行的 getService: getS ...
- SAP 电商云 Spartacus UI 里如何捕捉语言设置的更改
我们知道在 SAP 电商云 Spartacus UI 里,用户可以通过下拉菜单更改当前访问 site 的语言: 监控语言变化的代码: this.subscription.add(this.langua ...
- 如何在 SAP 电商云 Spartacus UI 里新建一个页面
因为 SAP Spartacus UI 是基于 CMS 驱动的,因此流程是:我们首先在 SAP Commerce Cloud Backoffice 创建新的 content page, CMS Com ...
最新文章
- vue升级之路(三)-- vue-router的使用
- python绘制可多角度查看的3d图像
- 《Linux内核设计与实现》读书笔记(十)- 内核同步方法【转】
- 配置iscsi服务器_在Windows Server 2016上安装和配置iSCSI目标服务器
- TechNet 晒文 - Windows 7 系列汇总
- 华为2288H V5服务器安装win_server_2016问题解决过程
- 指纹模式识别算法源码及其测试和应用方法
- 信号发生器和任意波形发生器的区别
- 【第17天】SQL进阶-查询优化- SHOW STATUS(SQL 小虚竹)
- DirectX加速不可用、已禁用的解决方法(转载)
- 2018-12支付宝红包赚钱薅羊毛全攻略
- 监听电源键的单击或长按事件
- Python开发, 恶意病毒扫描
- 朋友,别再干巴巴地“陈述”简历了,10条写作的技巧分享给你
- C语言基础分享——内存管理3
- c语言创建文件存放,C语言文件操作
- 对于“2017面向对象程序设计(Java)第五周工作总结”存在问题的反馈及本周教学计划...
- 纳米二氧化硅/分解酶/聚己内酯复合微球/银纳米颗粒修饰二氧化硅微球SERS基底的应用
- Android股票K线图
- 大唐杯知识点汇总大全(一)