From 9b04b12decf48b3383252768fca4a6d780efa16b Mon Sep 17 00:00:00 2001 From: aodi Date: Mon, 15 Apr 2024 16:27:30 +0800 Subject: [PATCH] =?UTF-8?q?fix=20=E7=BC=96=E7=A0=81=E6=96=9C=E6=9D=A0?= =?UTF-8?q?=E7=A6=81=E7=94=A8=E7=9A=84=E5=8F=8D=E4=BB=A3=E6=97=A0=E6=B3=95?= =?UTF-8?q?=E5=8A=A0=E8=BD=BD=E5=9B=BE=E7=89=87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit fix 编码斜杠禁用的反代无法加载图片 修改url编码 fix 编码斜杠禁用的反代无法加载图片 修改url编码 --- src/components/cards/BackdropCard.vue | 2 +- src/components/cards/LibraryCard.vue | 4 ++-- src/components/cards/PluginAppCard.vue | 2 +- src/components/cards/PluginCard.vue | 2 +- src/components/cards/PosterCard.vue | 2 +- src/views/plugin/PluginCardListView.vue | 2 +- 6 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/components/cards/BackdropCard.vue b/src/components/cards/BackdropCard.vue index b9ac07a1..c266e2e5 100644 --- a/src/components/cards/BackdropCard.vue +++ b/src/components/cards/BackdropCard.vue @@ -25,7 +25,7 @@ function goPlay() { // 计算图片地址 const getImgUrl = computed(() => { const image = props.media?.image || '' - return `${import.meta.env.VITE_API_BASE_URL}system/img/0/${encodeURI(image)}` + return `${import.meta.env.VITE_API_BASE_URL}system/img/0/${encodeURIComponent(image).replace(/%2F/g, '/')}` }) diff --git a/src/components/cards/LibraryCard.vue b/src/components/cards/LibraryCard.vue index 95ba557b..43ee7d98 100644 --- a/src/components/cards/LibraryCard.vue +++ b/src/components/cards/LibraryCard.vue @@ -56,7 +56,7 @@ function getImgUrl(url: string) { if (!url) return getDefaultImage() else - return `${import.meta.env.VITE_API_BASE_URL}system/img/0/${encodeURI(url)}` + return `${import.meta.env.VITE_API_BASE_URL}system/img/0/${encodeURIComponent(url).replace(/%2F/g, '/')}` } // 根据多张图片生成媒体库封面 @@ -68,7 +68,7 @@ async function drawImages(imageList: string[]) { // 为所有图片添加system/img前缀 for (let i = 0; i < IMAGES.length; i++) - IMAGES[i] = `${import.meta.env.VITE_API_BASE_URL}system/img/0/${encodeURI(IMAGES[i])}` + IMAGES[i] = `${import.meta.env.VITE_API_BASE_URL}system/img/0/${encodeURIComponent(IMAGES[i]).replace(/%2F/g, '/')}` // canvas const canvas = canvasRef.value diff --git a/src/components/cards/PluginAppCard.vue b/src/components/cards/PluginAppCard.vue index 2506c503..1d41df01 100644 --- a/src/components/cards/PluginAppCard.vue +++ b/src/components/cards/PluginAppCard.vue @@ -91,7 +91,7 @@ const iconPath: Ref = computed(() => { return noImage // 如果是网络图片则使用代理后返回 if (props.plugin?.plugin_icon?.startsWith('http')) - return `${import.meta.env.VITE_API_BASE_URL}system/img/1/${encodeURI(props.plugin?.plugin_icon)}` + return `${import.meta.env.VITE_API_BASE_URL}system/img/1/${encodeURIComponent(props.plugin?.plugin_icon).replace(/%2F/g, '/')}` return `./plugin_icon/${props.plugin?.plugin_icon}` }) diff --git a/src/components/cards/PluginCard.vue b/src/components/cards/PluginCard.vue index 4fcc0944..20f1a3e9 100644 --- a/src/components/cards/PluginCard.vue +++ b/src/components/cards/PluginCard.vue @@ -223,7 +223,7 @@ const iconPath: Ref = computed(() => { return noImage // 如果是网络图片则使用代理后返回 if (props.plugin?.plugin_icon?.startsWith('http')) - return `${import.meta.env.VITE_API_BASE_URL}system/img/1/${encodeURI(props.plugin?.plugin_icon)}` + return `${import.meta.env.VITE_API_BASE_URL}system/img/1/${encodeURIComponent(props.plugin?.plugin_icon).replace(/%2F/g, '/')}` return `./plugin_icon/${props.plugin?.plugin_icon}` }) diff --git a/src/components/cards/PosterCard.vue b/src/components/cards/PosterCard.vue index 3ddd601b..dc393c61 100644 --- a/src/components/cards/PosterCard.vue +++ b/src/components/cards/PosterCard.vue @@ -31,7 +31,7 @@ const getImgUrl = computed(() => { if (imageLoadError.value) return noImage const image = props.media?.image || '' - return `${import.meta.env.VITE_API_BASE_URL}system/img/0/${encodeURI(image)}` + return `${import.meta.env.VITE_API_BASE_URL}system/img/0/${encodeURIComponent(image).replace(/%2F/g, '/')}` }) // 跳转播放 diff --git a/src/views/plugin/PluginCardListView.vue b/src/views/plugin/PluginCardListView.vue index 0bb3631b..e2aec265 100644 --- a/src/views/plugin/PluginCardListView.vue +++ b/src/views/plugin/PluginCardListView.vue @@ -117,7 +117,7 @@ function pluginIcon(item: Plugin) { return noImage // 如果是网络图片则使用代理后返回 if (item?.plugin_icon?.startsWith('http')) - return `${import.meta.env.VITE_API_BASE_URL}system/img/1/${encodeURI(item?.plugin_icon)}` + return `${import.meta.env.VITE_API_BASE_URL}system/img/1/${encodeURIComponent(item?.plugin_icon).replace(/%2F/g, '/')}` return `./plugin_icon/${item?.plugin_icon}` }