52 lines
1.3 KiB
TypeScript
52 lines
1.3 KiB
TypeScript
// 环境配置
|
|
export const ENV_CONFIG = {
|
|
dev: {
|
|
name: '开发环境',
|
|
serverUrl: 'http://127.0.0.1:8787',
|
|
},
|
|
prod: {
|
|
name: '生产环境',
|
|
serverUrl: 'https://websopy-api.websoft.top',
|
|
},
|
|
} as const
|
|
|
|
export type EnvKey = keyof typeof ENV_CONFIG
|
|
|
|
const STORAGE_KEY = 'websopy_api_env'
|
|
|
|
// 客户端检测
|
|
function isClient(): boolean {
|
|
return typeof window !== 'undefined'
|
|
}
|
|
|
|
// 从 localStorage 读取保存的环境,默认生产环境
|
|
export function getCurrentEnv(): EnvKey {
|
|
if (!isClient()) return 'prod'
|
|
const saved = localStorage.getItem(STORAGE_KEY)
|
|
if (saved && saved in ENV_CONFIG) {
|
|
return saved as EnvKey
|
|
}
|
|
return 'prod'
|
|
}
|
|
|
|
export function setCurrentEnv(env: EnvKey) {
|
|
if (!isClient()) return
|
|
localStorage.setItem(STORAGE_KEY, env)
|
|
}
|
|
|
|
export function getApiBaseUrl(): string {
|
|
return ENV_CONFIG[getCurrentEnv()].serverUrl
|
|
}
|
|
|
|
// 动态 API URL(根据当前环境)
|
|
const BASE_URL = getApiBaseUrl()
|
|
|
|
export const SERVER_API_URL = '/api/_server'
|
|
export const MODULES_API_URL = '/api/_modules'
|
|
// App 模块:相对路径,走 /api/_app proxy → websopy-api.websoft.top/api/app/*
|
|
export const APP_API_URL = 'https://api.gxjczxw.com'
|
|
export const FILE_SERVER = '/api/_file'
|
|
|
|
// Some endpoints use this as a special TenantId override (defaults to current tenant)
|
|
export const TEMPLATE_ID = '5'
|