feat: 完善环境标识配置

This commit was merged in pull request #1.
This commit is contained in:
湛兮
2026-06-05 15:35:51 +08:00
parent 5fe2e2c75c
commit f8386d7b02
8 changed files with 76 additions and 9 deletions
+35
View File
@@ -0,0 +1,35 @@
import "server-only";
export type AppEnv = "local" | "develop" | "production";
export function getAppEnv(): AppEnv {
const appEnv = process.env.APP_ENV;
if (appEnv === "production") {
return "production";
}
if (appEnv === "develop" || appEnv === "test") {
return "develop";
}
if (appEnv === "local") {
return "local";
}
return process.env.NODE_ENV === "production" ? "production" : "local";
}
export function getAppEnvLabel() {
if (process.env.APP_ENV_LABEL) {
return process.env.APP_ENV_LABEL;
}
const labels: Record<AppEnv, string> = {
local: "本地环境",
develop: "测试环境",
production: "生产环境"
};
return labels[getAppEnv()];
}
+3 -1
View File
@@ -2,6 +2,8 @@ import "server-only";
import { cookies } from "next/headers";
import { getAppEnv } from "@/lib/environment";
const DEFAULT_COOKIE_NAME = "role_user_session";
export function getSessionCookieName() {
@@ -17,7 +19,7 @@ export async function setSessionToken(token: string) {
cookieStore.set(getSessionCookieName(), token, {
httpOnly: true,
secure: process.env.NODE_ENV === "production",
secure: getAppEnv() === "production",
sameSite: "lax",
path: "/",
maxAge: 60 * 60 * 8