/** * 将后端返回的 storage_path / thumbnail_path 转换为可访问的前端 URL。 * * 后端存储路径格式: "./uploads/{tenant_id}/{filename}" 或 "/uploads/..." * 前端统一使用相对路径 "/uploads/...",由 Vite(dev)或 nginx(prod)代理到后端。 * * 如需认证,自动附加 ?token= 参数。 */ export function resolveMediaUrl(rawPath: string | null | undefined): string { if (!rawPath) return ''; const base = rawPath.replace(/^\.\//, '/'); const token = localStorage.getItem('access_token'); return token ? `${base}?token=${token}` : base; }