自選股 YouTube 摘要 個股摘要 使用說明

使用說明

JS BRIDGE

此模式由 App 透過 WebView JS Bridge 注入 Token,Token 不會出現在 URL 中

1JS Bridge 運作方式(Pull 模式)

App 透過 addJavascriptInterface(Android)或 evaluateJavaScript(iOS)註冊 window.AppBridge 物件,提供 getCMoneyJwtToken() 方法。

頁面載入後會主動呼叫 window.AppBridge.getCMoneyJwtToken() 拿 Token,不需要 App 推送。

// Android (Kotlin) — 註冊 Bridge 物件 class TokenBridge(private val token: String) { @JavascriptInterface fun getCMoneyJwtToken(): String = token } webView.addJavascriptInterface(TokenBridge(userToken), "AppBridge") // iOS (Swift) — 在頁面載入前注入 webView.evaluateJavaScript( "window.AppBridge = { getCMoneyJwtToken: () => '\(token)' }" )
// 網頁端:主動拉取(所有頁面已內建) const token = window.AppBridge?.getCMoneyJwtToken?.();

2頁面載入流程

1. App 註冊 AppBridge.getCMoneyJwtToken() 介面

2. App 開啟 WebView 載入頁面(例如 /app/watchlist

3. 頁面載入後主動呼叫 AppBridge.getCMoneyJwtToken() 取得 Token

4. 若 Bridge 尚未就緒,頁面會自動輪詢 3 秒(每 200ms 嘗試一次)

5. 取得 Token 後存入 sessionStorage,切換頁籤不需重新注入

3在瀏覽器中測試(不需 App)

Pull 模式(getCMoneyJwtToken())需要 App WebView 預先註冊 Bridge,無法在一般瀏覽器中測試。

所有頁面都保留了 Push 模式setCMoneyJwtToken())作為備用,可在瀏覽器中快速驗證功能:

測試步驟:

1. 用瀏覽器打開任意 Bridge 頁面,例如 /app/watchlist

2. 頁面會顯示「等待 Token」(因為沒有 AppBridge.getCMoneyJwtToken),3 秒後輪詢結束

3. 按 F12 開啟 DevTools → Console,貼上以下指令:

window.AppBridge.setCMoneyJwtToken('你的Token貼在這裡')

4. 頁面會立即載入資料,Token 同時存入 sessionStorage

5. 之後切換其他頁籤(自選股、YouTube 摘要等)不需要重新注入,Token 會自動沿用

注意:sessionStorage 的生命週期 = 該分頁存活期間。關閉分頁或開新分頁後需要重新注入。重新整理(F5)不影響。

4可用頁面

頁面路徑
自選股/app/watchlist
YouTube 摘要/app/youtube
個股摘要/app/stock-summary?commkeys=AAPL,NVDA
使用說明/app/docs-guide
後端 API 共用同一組:/api/watchlist/api/youtube-summary/api/stock-summary,Token 透過 Authorization: Bearer <token> header 傳遞。