入口:所有的 regular route 都使用 universal engine:
express 的 response 实现:
express application 的实现:
静态资源,都从 browser 目录下获取:
渲染完毕的 callback:
然后就来到 Spartacus 代码了:
得到 rendering key:/
139 行,判断请求是否被 cache 过。
如果正在渲染或者并发渲染数达到上限,则 fallback 到 CSR:
判断是否 timeout:
shouldTimeout 返回 true,必须下列任意一个条件成立:
this.ssrOptions === null
this.getRenderingStrategy(request) === RenderingStrategy.ALWAYS_SSR);
这里咋就 fallback 到 CSR 了?
原因:A value of 0 will instantly return the CSR page.