此模式由 App 透過 WebView JS Bridge 注入 Token,Token 不會出現在 URL 中
App 透過 addJavascriptInterface(Android)或 evaluateJavaScript(iOS)註冊 window.AppBridge 物件,提供 getCMoneyJwtToken() 方法。
頁面載入後會主動呼叫 window.AppBridge.getCMoneyJwtToken() 拿 Token,不需要 App 推送。
1. App 註冊 AppBridge.getCMoneyJwtToken() 介面
2. App 開啟 WebView 載入頁面(例如 /app/watchlist)
3. 頁面載入後主動呼叫 AppBridge.getCMoneyJwtToken() 取得 Token
4. 若 Bridge 尚未就緒,頁面會自動輪詢 3 秒(每 200ms 嘗試一次)
5. 取得 Token 後存入 sessionStorage,切換頁籤不需重新注入
Pull 模式(getCMoneyJwtToken())需要 App WebView 預先註冊 Bridge,無法在一般瀏覽器中測試。
所有頁面都保留了 Push 模式(setCMoneyJwtToken())作為備用,可在瀏覽器中快速驗證功能:
測試步驟:
1. 用瀏覽器打開任意 Bridge 頁面,例如 /app/watchlist
2. 頁面會顯示「等待 Token」(因為沒有 AppBridge.getCMoneyJwtToken),3 秒後輪詢結束
3. 按 F12 開啟 DevTools → Console,貼上以下指令:
4. 頁面會立即載入資料,Token 同時存入 sessionStorage
5. 之後切換其他頁籤(自選股、YouTube 摘要等)不需要重新注入,Token 會自動沿用
| 頁面 | 路徑 |
|---|---|
| 自選股 | /app/watchlist |
| YouTube 摘要 | /app/youtube |
| 個股摘要 | /app/stock-summary?commkeys=AAPL,NVDA |
| 使用說明 | /app/docs-guide |
/api/watchlist、/api/youtube-summary、/api/stock-summary,Token 透過 Authorization: Bearer <token> header 傳遞。