fix:图片

This commit is contained in:
董海洋
2026-06-04 10:04:40 +08:00
parent 9cf2e00031
commit c6a877ab28
3 changed files with 22 additions and 13 deletions
-1
View File
@@ -51,7 +51,6 @@ STOCK_WARN_THRESHOLD=10
# 微信支付
WECHAT_MCH_ID=
WECHAT_API_KEY=
# WECHAT_NOTIFY_URL=http://110.42.255.239:3006/api/payment/notify
WECHAT_NOTIFY_URL=https://donghy.top/api/payment/notify
WECHAT_CERT_PATH=
WECHAT_KEY_PATH=
+9 -5
View File
@@ -1,14 +1,18 @@
// 服务端域名配置 - 从环境变量读取,默认临时域名(备案期间)
const BASE_URL = process.env.BASE_URL || 'http://110.42.255.239:3006'
// 服务端域名配置 - 从环境变量读取,默认正式域名
const BASE_URL = process.env.BASE_URL || 'https://donghy.top'
// 图片域名(不带端口)
const IMG_DOMAIN = BASE_URL.replace(/:\d+/, '')
const DOMAIN_CONFIG = {
BASE_URL: BASE_URL,
API_PATH: '/api',
IMG_PATH: '/img'
IMG_PATH: '/img',
IMG_DOMAIN: IMG_DOMAIN
}
// 完整的图片基础地址
const IMG_BASE_URL = `${DOMAIN_CONFIG.BASE_URL}${DOMAIN_CONFIG.IMG_PATH}`
// 完整的图片基础地址(不带端口)
const IMG_BASE_URL = `${IMG_DOMAIN}${DOMAIN_CONFIG.IMG_PATH}`
module.exports = {
DOMAIN_CONFIG,
+13 -7
View File
@@ -29,20 +29,26 @@ function toRelativeUrl(url) {
return url;
}
// 将相对路径转换为完整URL(用于返回给前端)
// 将相对路径转换为完整URL(用于返回给前端,图片URL不带端口
function toFullUrl(url) {
if (!url) return '';
// 如果已经是完整URL直接返回
// 如果已经是完整URL替换路径并移除端口
if (url.startsWith('http://') || url.startsWith('https://')) {
return url;
// 将 /uploads/goods/ 替换为 /img/,并移除端口
return url.replace('/uploads/goods/', '/img/').replace(/:\d+/, '');
}
// 如果是相对路径,拼接当前域名
const baseUrl = DOMAIN_CONFIG.BASE_URL;
// 如果是相对路径,拼接图片域名(不带端口)并替换路径
const imgDomain = DOMAIN_CONFIG.IMG_DOMAIN || DOMAIN_CONFIG.BASE_URL.replace(/:\d+/, '');
if (url.startsWith('/')) {
return baseUrl + url;
// 将 /uploads/goods/ 替换为 /img/
return imgDomain + url.replace('/uploads/goods/', '/img/');
}
if (url.startsWith('img/')) {
return baseUrl + '/' + url;
return imgDomain + '/' + url;
}
// 处理可能的 uploads/goods/ 开头的路径
if (url.startsWith('uploads/goods/')) {
return imgDomain + '/img/' + url.replace('uploads/goods/', '');
}
return url;
}