31 lines
972 B
TypeScript
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;
|
|
}
|