From 3db1a702fae255feea4820d06aa9fcfbc09f348d Mon Sep 17 00:00:00 2001 From: tongtongstudio Date: Fri, 23 Oct 2026 09:45:44 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20withBase=20=E5=85=BC=E5=AE=B9=E5=90=8E?= =?UTF-8?q?=E7=AB=AF=E8=BF=94=E5=9B=9E=E7=9A=84=20OSS=20=E7=BB=9D=E5=AF=B9?= =?UTF-8?q?=E5=9C=B0=E5=9D=80=EF=BC=8C=E9=81=BF=E5=85=8D=E6=8B=BC=E6=8E=A5?= =?UTF-8?q?=E5=87=BA=E7=8E=B0=E9=94=99=E8=AF=AF=E5=89=8D=E7=BC=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/app/package.ts | 10 ++++++++-- src/views/app-manager/upload-package/index.vue | 2 +- 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/src/api/app/package.ts b/src/api/app/package.ts index 4ee52f8a..46bbd2a6 100644 --- a/src/api/app/package.ts +++ b/src/api/app/package.ts @@ -118,9 +118,15 @@ const AppPackageAPI = { export default AppPackageAPI; -/** 拼接静态资源完整访问地址(img / el-image 的 src 不经过 axios,需手动补 baseURL) */ +/** + * 拼接静态资源完整访问地址(img / el-image 的 src 不经过 axios,需手动补 baseURL) + * 说明:后端现在直接返回 OSS 绝对地址(https://xxx.aliyuncs.com/...),不再需要拼前缀, + * 这里同时兼容历史相对路径(/20261019/xxx.png)。 + */ export function withBase(url?: string): string { if (!url) return ""; + // 已是绝对地址(http(s)://、协议相对 //、base64)时原样返回,避免拼出 /dev-apihttps://... 这类错误地址 + if (/^(https?:)?\/\//i.test(url) || url.startsWith("data:")) return url; const baseApi = import.meta.env.VITE_APP_BASE_API ?? ""; - return `${baseApi}${url}`; + return `${baseApi.replace(/\/$/, "")}${url.startsWith("/") ? "" : "/"}${url}`; } diff --git a/src/views/app-manager/upload-package/index.vue b/src/views/app-manager/upload-package/index.vue index e64ad09a..5519c72d 100644 --- a/src/views/app-manager/upload-package/index.vue +++ b/src/views/app-manager/upload-package/index.vue @@ -191,7 +191,7 @@ v-for="(s, i) in current.screenshots || []" :key="i" :src="withBase(s)" - :preview-src-list="(current.screenshots || []).map(withBase)" + :preview-src-list="(current.screenshots || []).map((s) => withBase(s))" :initial-index="i" fit="cover" class="shot-gallery__item"