天天看點

SAP Spartacus伺服器端渲染模式下的調試方法

在使用本文章介紹的步驟進行SAP Spartacus Storefront在伺服器端渲染模式(SSR)下的調試之前,請您確定已經按照如下幫助文檔的介紹,已經成功啟用了伺服器端渲染:

https://sap.github.io/spartacus-docs/server-side-rendering-in-spartacus/

并且成功通過下列指令行啟動了Spartacus Storefront:

node dist/standalone/server/main.js

SAP Spartacus伺服器端渲染模式下的調試方法

本文介紹SAP Spartacus Storefront工作于伺服器端渲染模式下時,如何對其進行調試:

Ctrl+Shift+D, 打開Visual Studio Code的調試面闆:

SAP Spartacus伺服器端渲染模式下的調試方法

添加一個新的調試配置:

SAP Spartacus伺服器端渲染模式下的調試方法

點選下圖底部的“Add Configuration”:

SAP Spartacus伺服器端渲染模式下的調試方法

選擇“Node.js: Attach to Process”

SAP Spartacus伺服器端渲染模式下的調試方法

根據實際需要更改建立好的第8行的debug配置名稱:

SAP Spartacus伺服器端渲染模式下的調試方法

運作這個調試配置:

SAP Spartacus伺服器端渲染模式下的調試方法

在Visual Studio Code裡能夠觀察到處于運作狀态中的node程序:

選擇這個程序後,在Visual Studio Code的call stack标簽頁裡,就能看到一個處于RUNNING狀态的程序了,現在就可以設定斷點開始調試了:

接下來的調試,就和一般的在Visual Studio Code裡調試nodejs應用沒有什麼差別了:

把Visual Studio Code breakpoints面闆裡的Caught Exceptions和Uncaught Exceptions的勾打上,這樣一旦Spartacus在SSR模式下運作遇到錯誤,斷點會自動觸發:

SAP Spartacus伺服器端渲染模式下的調試方法

我們建議永遠不要緩存包含使用者資料的頁面,甚至不要在 SSR 中渲染它們。 預設情況下,在 SSR 中呈現的頁面始終呈現為匿名使用者,是以它們不包含任何使用者資料。 這是因為使用者令牌僅在用戶端,從未傳遞給 SSR 伺服器。

繼續閱讀