resolveMediaUrl.ts
580 Bytes
import { buildApiUrl, getStaticMediaOrigin } from './apiBase'
/** 相对路径拼后端根(含 H5 开发时的静态资源域名);绝对 URL / data URL 原样返回 */
export function resolveMediaUrlForApp(stored: string | null | undefined): string {
const s = (stored ?? '').trim()
if (!s) return ''
if (s.startsWith('data:')) return s
if (/^https?:\/\//i.test(s)) return s
const path = s.startsWith('/') ? s : `/${s}`
const mediaOrigin = getStaticMediaOrigin()
if (mediaOrigin) return `${mediaOrigin.replace(/\/$/, '')}${path}`
return buildApiUrl(path)
}