Files
2026-04-23 18:58:13 +08:00

31 lines
972 B
TypeScript

/** 浏览器可读的 API 根(scheme + host + port),不含路径。生产环境务必配置 NEXT_PUBLIC_API_ORIGIN。 */
export function getPublicApiOrigin(): string {
const o =
process.env.NEXT_PUBLIC_API_ORIGIN ||
(process.env.NODE_ENV === 'development' ? 'http://127.0.0.1:8000' : '');
if (!o) {
throw new Error('NEXT_PUBLIC_API_ORIGIN is not set');
}
return o.replace(/\/$/, '');
}
export function getOAuthClientId(): string {
const id =
process.env.NEXT_PUBLIC_OAUTH_CLIENT_ID ||
(process.env.NODE_ENV === 'development' ? 'spa' : '');
if (!id) {
throw new Error('NEXT_PUBLIC_OAUTH_CLIENT_ID is not set');
}
return id;
}
export function getOAuthRedirectUri(): string {
const u =
process.env.NEXT_PUBLIC_OAUTH_REDIRECT_URI ||
(process.env.NODE_ENV === 'development' ? 'http://localhost:3000/oauth/callback' : '');
if (!u) {
throw new Error('NEXT_PUBLIC_OAUTH_REDIRECT_URI is not set');
}
return u;
}