From ba34f40baae35c4e66ca60cc89c4c20a8bd79725 Mon Sep 17 00:00:00 2001 From: Pine Date: Mon, 24 Aug 2026 20:35:33 +0800 Subject: [PATCH] =?UTF-8?q?fix(=E5=A4=A7=E5=B1=8F):=20=E7=A8=B3=E5=81=A5?= =?UTF-8?q?=E6=8C=87=E5=90=91=20server-core=20=E2=80=94=20=E6=97=A7=20:100?= =?UTF-8?q?85=20=E5=9C=B0=E5=9D=80=E8=A7=86=E4=B8=BA=E5=A4=B1=E6=95=88?= =?UTF-8?q?=EF=BC=8C=E5=85=A8=E9=83=A8=E5=9B=9E=E9=80=80=20:8090/park?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 部署 config.json / 构建期 VITE_API_BASE 若仍为旧园区后端(:10085, 已删除), 会导致大屏一切请求打到废弃地址。getApiBase/API_BASE 对 :10085 一律忽略并回退到 server-core 统一入口 :8090/park;MQTT 经 /park/api/config 引导取正确 broker(192.168.1.3)。 --- src/config.js | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/config.js b/src/config.js index 9b4d367..eb3fd6c 100644 --- a/src/config.js +++ b/src/config.js @@ -21,14 +21,20 @@ function resolveHost() { // 园区后端已迁入 server-core 统一入口:API 由 /park 前缀子应用提供(相对 /api、/file 路径不变) // 默认指向 server-core 开发端口 :8090 的 /park 前缀;生产用 window.__DPM_API__ 或 VITE_API_BASE 覆盖。 -export const API_BASE = window.__DPM_API__ || env.VITE_API_BASE || `http://${resolveHost()}:8090/park`; +// 旧园区后端(:10085)已废弃迁入 server-core;把指向旧后端的地址视为失效 → 回退统一入口 :8090/park。 +const _isLegacyApi = (u) => !!(u && (String(u).includes(':10085') || String(u).includes('10085'))); +const _apiFromWindow = window.__DPM_API__ && !_isLegacyApi(window.__DPM_API__) ? window.__DPM_API__ : null; +const _apiFromEnv = env.VITE_API_BASE && !_isLegacyApi(env.VITE_API_BASE) ? env.VITE_API_BASE : null; + +export const API_BASE = _apiFromWindow || _apiFromEnv || `http://${resolveHost()}:8090/park`; export const MQTT_URL = window.__DPM_MQTT__ || env.VITE_MQTT_URL || `ws://${resolveHost()}:8083/mqtt`; export const MQTT_USERNAME = window.__DPM_MQTT_USER__ || env.VITE_MQTT_USERNAME || ''; export const MQTT_PASSWORD = window.__DPM_MQTT_PASS__ || env.VITE_MQTT_PASSWORD || ''; -/** 惰性读取 API 基址(允许 bootstrap 从后端 /api/config 覆盖后再生效) */ +/** 惰性读取 API 基址(仅接受 server-core 地址,旧 :10085 一律回退到 :8090/park) */ export function getApiBase() { - return window.__DPM_API__ || API_BASE; + if (window.__DPM_API__ && !_isLegacyApi(window.__DPM_API__)) return window.__DPM_API__; + return API_BASE; } /** 惰性读取 MQTT 地址(允许 bootstrap 覆盖后再生效) */