使用 Cookie 進行個人化
在本教學中,您將學習如何使用伺服器端 Cookie 進行個人化設定。例如,您可以根據購物者是新購物者還是回頭客顯示不同的內容,像是向新購物者顯示歡迎優惠橫幅,向回頭客顯示促銷優惠橫幅。
建議在非 Production 環境中測試這些步驟,然後再將變更部署到生產 Production 環境。
在執行本教學的命令之前,請以實際值取代預留位置。預留位置的格式為:$PLACEHOLDER
要完成本教學,請您:
-
使用 PWA Kit 3.1.0 或更高版本。
-
在本機電腦上,完成以下任一步驟來啟用伺服器端 Cookie:
-
設定環境變數
MRT_ALLOW_COOKIES=true
。或
-
將
localAllowCookies
傳遞給ssr.js
中runtime.CreateHandler
的選項。
-
-
對於所選環境,請使用 Managed Runtime (MRT) API 或 Runtime Admin 來啟用伺服器端 Cookie:
- **MRT API:**呼叫 projects_target_partial_update API 端點並將
allow_cookies
設為 true。 - Runtime Admin:在環境設定中啟用 Cookie。
- **MRT API:**呼叫 projects_target_partial_update API 端點並將
-
在
app/pages/home/index.jsx
中,為新購物者和回頭客建立您選擇的內容。或者,建立適用於不同類別購物者的其他內容。
- 將此 JavaScript 程式碼新增至專案
app/pages/home/index.jsx
的首頁檔案:
- 在不同的瀏覽器和裝置上徹底測試 Cookie 功能。
- 在將任何個人資訊儲存到伺服器端 Cookie 之前,請務必徵得購物者的同意。
- 確保您的個人化方法符合相關的資料隱私法規,例如一般資料保護規則 (GDPR) 或加州消費者隱私法 (CCPA)。
- 仔細評估個人化對不同購物者群體的影響,以避免意外後果。
- 為 Cookie 設定適當的安全屬性,例如用於阻止用戶端 JavaScript 存取的 HttpOnly 旗標、用於 HTTPS 連接的 Secure 旗標。
- 根據您的需求,為 Cookie 設定合理的到期時間。
isNewShopper
適合較長的到期時間,例如一年。
本節針對使用伺服器端 Cookie 時可能遇到的常見錯誤,提供建議的解決方案。
部署涉及伺服器端 Cookie 的程式碼後,您沒有得到預期的網站行為。
**原因:**您沒有啟用伺服器端 Cookie。
**建議的解決方案:**依照先決條件中的說明,啟用伺服器端 Cookie。
使用者工作階段或喜好設定出現中斷。
**原因:**Cookie 已到期或過早刪除。
建議的解決方案:
- 檢查 Cookie 的到期設定,並根據需求進行調整,以符合所需的工作階段或保留長度要求。
- 實施適當的機制來偵測、處理已到期或已刪除的 Cookie,例如重新驗證購物者身份或提示他們重新建立喜好設定。
- 觀察購物者的回饋和行為,以找出與 Cookie 到期/刪除相關的任何模式或問題,並主動解決這些問題。
有時,Cookie 在您網站的不同頁面或元件中的行為不同,從而導致購物者體驗不一致。
**原因:**與 Cookie 相關的邏輯不一致或分散。
建議的解決方案:
- 確保您在所有相關頁面和元件中一致地套用與 Cookie 相關的邏輯,包括設定和讀取 Cookie。
- 檢查您的應用程式流程,以確定 Cookie 處理方式是否有任何差異或不一致之處。
- 考慮集中管理 Cookie 相關邏輯或使用專用的程式庫或中介軟體來管理 Cookie,以確保統一的行為。