Yuruicamp

前端認證與 REST 共用層

用途

frontend/storefront/js/api-client.js 是真後端請求的統一入口。頁面只呼叫 window.APIBookingAPIAdminAPI,不自行取得 Token、解析 Envelope 或組合後端 URL。

流程

頁面
→ API facade
→ ApiClient._restRequest()
→ AppAuth.getIdToken()
→ Spring Boot
→ 解開 { success, data, meta }

認證

正式 Firebase 初始化完成後注入:

window.AppAuth.configure({ auth: firebaseAuth });

本機臨時設定:

window.AppAuth.configure({
  devToken: 'dev:uid-local:local@example.com:google:Local',
});

開發 Token 只保存在目前頁面的記憶體;也可在本機自行設定 AppConfig.AUTH.DEV_TOKEN,但不得提交真實 Token。

REST 請求

const profile = await window.ApiClient._restRequest('/me', {
  method: 'GET',
  auth: 'required',
});

共用層負責:

ApiRequestError 保留 codemessagedetailsstatus,頁面不可再從錯誤字串拆後端錯誤碼。

Mock JSON 與 HTML partial 是靜態資源,仍可由 API/layout 載入層使用 fetch;這不等於真後端 REST。頁面新增業務 API 時必須先加到對應 facade。