优化h5域名配置,当域名未配置或配置有误,使用默认域名。
parent
df64ac9aea
commit
f34035f0b4
|
|
@ -17,11 +17,14 @@ export const websocketPath = import.meta.env.SHOPRO_WEBSOCKET_PATH;
|
||||||
// 判断是否在小程序环境中
|
// 判断是否在小程序环境中
|
||||||
const isMiniProgram = typeof wx !== 'undefined' && typeof wx.getSystemInfoSync === 'function' && typeof window === 'undefined';
|
const isMiniProgram = typeof wx !== 'undefined' && typeof wx.getSystemInfoSync === 'function' && typeof window === 'undefined';
|
||||||
|
|
||||||
// 解析逗号分隔的域名
|
// 默认域名
|
||||||
const parseCommaSeparatedUrls = (urls) => {
|
const DEFAULT_DOMAIN = 'https://doc.iocoder.cn/';
|
||||||
|
|
||||||
|
// 解析域名并设置默认值
|
||||||
|
const parseDomain = (urls, defaultDomain) => {
|
||||||
if (!urls) {
|
if (!urls) {
|
||||||
console.warn('未配置分享链接,使用默认域名');
|
console.warn('未配置分享链接,使用默认域名');
|
||||||
return null;
|
return defaultDomain;
|
||||||
}
|
}
|
||||||
const urlList = urls
|
const urlList = urls
|
||||||
.split(',') // 按逗号分割
|
.split(',') // 按逗号分割
|
||||||
|
|
@ -29,24 +32,23 @@ const parseCommaSeparatedUrls = (urls) => {
|
||||||
.filter(url => url); // 过滤空字符串
|
.filter(url => url); // 过滤空字符串
|
||||||
if (urlList.length === 0) {
|
if (urlList.length === 0) {
|
||||||
console.warn('分享链接配置为空或无效,使用默认域名');
|
console.warn('分享链接配置为空或无效,使用默认域名');
|
||||||
return null;
|
return defaultDomain;
|
||||||
}
|
}
|
||||||
console.log('可用域名列表:', urlList); // 打印可用域名列表
|
console.log('可用域名列表:', urlList); // 打印可用域名列表
|
||||||
return urlList[Math.floor(Math.random() * urlList.length)]; // 随机选择一个域名
|
const selectedDomain = urlList[Math.floor(Math.random() * urlList.length)]; // 随机选择一个域名
|
||||||
|
if (!selectedDomain.startsWith('http')) {
|
||||||
|
console.warn('域名必须是完整的 URL,不能是路径,使用默认域名');
|
||||||
|
return defaultDomain;
|
||||||
|
}
|
||||||
|
return selectedDomain;
|
||||||
};
|
};
|
||||||
|
|
||||||
// 获取 H5 分享链接
|
// 获取 H5 分享链接
|
||||||
// 普通浏览器:使用 SHOPRO_H5SHARE_URL
|
// 普通浏览器:使用 SHOPRO_H5SHARE_URL
|
||||||
// 小程序环境:使用 SHOPRO_MINI_BASE_URL
|
// 小程序环境:使用 SHOPRO_MINI_BASE_URL
|
||||||
export let h5shareUrl = isMiniProgram
|
export let h5shareUrl = isMiniProgram
|
||||||
? parseCommaSeparatedUrls(import.meta.env.SHOPRO_MINI_BASE_URL) || 'https://doc.iocoder.cn/'
|
? parseDomain(import.meta.env.SHOPRO_MINI_BASE_URL, DEFAULT_DOMAIN)
|
||||||
: parseCommaSeparatedUrls(import.meta.env.SHOPRO_H5SHARE_URL) || 'https://doc.iocoder.cn/';
|
: parseDomain(import.meta.env.SHOPRO_H5SHARE_URL, DEFAULT_DOMAIN);
|
||||||
|
|
||||||
// 确保 h5shareUrl 是完整的 URL
|
|
||||||
if (h5shareUrl && !h5shareUrl.startsWith('http')) {
|
|
||||||
console.warn('h5shareUrl 必须是完整的 URL,不能是路径,使用默认域名');
|
|
||||||
h5shareUrl = 'https://doc.iocoder.cn/'; // 如果配置错误,设置为默认值
|
|
||||||
}
|
|
||||||
|
|
||||||
// 调试信息
|
// 调试信息
|
||||||
console.log('当前环境:', process.env.NODE_ENV);
|
console.log('当前环境:', process.env.NODE_ENV);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue