52 lines
1.8 KiB
TypeScript
52 lines
1.8 KiB
TypeScript
/**
|
||
* Admin API 地址:生产环境走 oms 同源 nginx 反代(相对路径),开发走 Vite 代理。
|
||
* 桌面 Agent 等需直连网关时使用 resolveDirectAdminApiUrl。
|
||
*/
|
||
|
||
function normalizeBase(base: string): string {
|
||
return base.trim().replace(/\/$/, '')
|
||
}
|
||
|
||
/** 浏览器请求 Admin API(OpenAPI.BASE 或 omsUrl/orderUrl 等) */
|
||
export function resolveAdminApiPath(path: string): string {
|
||
const p = path.startsWith('/') ? path : `/${path}`
|
||
const override = import.meta.env.VITE_API_ADMIN_URL as string | undefined
|
||
if (!import.meta.env.DEV && override?.trim()) {
|
||
return `${normalizeBase(override)}${p}`
|
||
}
|
||
return p
|
||
}
|
||
|
||
export function resolveOpenApiBase(): string {
|
||
const override = import.meta.env.VITE_API_ADMIN_URL as string | undefined
|
||
if (!import.meta.env.DEV && override?.trim()) {
|
||
return normalizeBase(override)
|
||
}
|
||
return ''
|
||
}
|
||
|
||
/** 桌面 Agent 等直连 Admin 网关(不经 oms 页面反代) */
|
||
export function resolveDirectAdminApiUrl(): string {
|
||
const override = import.meta.env.VITE_API_ADMIN_URL as string | undefined
|
||
if (override?.trim()) {
|
||
return normalizeBase(override)
|
||
}
|
||
if (import.meta.env.DEV) {
|
||
return 'http://api.nanafa.com/admin'
|
||
}
|
||
return 'https://api.nanafa.com/admin'
|
||
}
|
||
|
||
/** 静态资源(uploads 等)托管在 Admin 服务 wwwroot;对外须带 PATHBASE `/admin`。
|
||
* 生产默认同源相对路径(由 nginx 反代 `/uploads` → `api.../admin/uploads`);
|
||
* 开发走 Vite `/uploads` 代理。可用 `VITE_API_ASSET_ORIGIN` 覆盖(勿漏 `/admin`)。
|
||
*/
|
||
export function resolveAdminAssetOrigin(): string {
|
||
const override = import.meta.env.VITE_API_ASSET_ORIGIN as string | undefined
|
||
if (override?.trim()) {
|
||
return normalizeBase(override)
|
||
}
|
||
// 空串 → resolveOmsAssetUrl 保留 `/uploads/...` 相对路径
|
||
return ''
|
||
}
|