fix(okx): cache options balances and stop SSE from hammering exchange API

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
dekun
2026-07-07 11:15:06 +08:00
parent 799a4d6b8b
commit 2ad9e049f3
6 changed files with 82 additions and 37 deletions
+12 -2
View File
@@ -6,6 +6,7 @@
let liveReconnectTimer = null;
let localLiveVersion = -1;
let sseConnected = false;
let refreshTimer = null;
function isEmbedShell() {
return document.body && document.body.getAttribute("data-embed-shell") === "1";
@@ -21,7 +22,7 @@
function refreshTabData(tab, opts) {
const options = opts || {};
if (typeof global.refreshAccountSnapshot === "function") {
global.refreshAccountSnapshot();
global.refreshAccountSnapshot(options);
}
if (typeof global.refreshPriceSnapshotConditional === "function") {
global.refreshPriceSnapshotConditional();
@@ -31,6 +32,15 @@
}
}
function scheduleRefresh() {
if (refreshTimer) return;
refreshTimer = setTimeout(function () {
refreshTimer = null;
if (document.hidden) return;
refreshTabData(currentTab(), { silent: true });
}, 80);
}
function onLiveEvent(data) {
const reason = data && data.reason;
const ver = Number(data && data.live_version) || 0;
@@ -41,7 +51,7 @@
}
if (ver === localLiveVersion) return;
localLiveVersion = ver;
refreshTabData(currentTab(), { silent: true });
scheduleRefresh();
}
function closeLiveStream() {