# niuma-admin-api **Repository Path**: du-dudu/niuma-admin-api ## Basic Information - **Project Name**: niuma-admin-api - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-08-30 - **Last Updated**: 2025-09-01 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## Niuma Nest - 一个简单的 NestJS 开发模板 ## 配置信息 项目使用 `@nestjs/config` 管理配置信息。 ### 新增环境变量 1. 在 `.env` 文件中添加键值,如 `REDIS_URL=redis://localhost:6379` 2. 在 `src/config/configuration.ts` 声明类型 + 缺省值,如 `redisUrl: process.env.REDIS_URL!` 3. 在 `src/config/env.validation.ts` 声明校验规则, 如 `REDIS_URL: Joi.string().uri().required()` ### 示例(新增 `REDIS_URL` 环境变量) ```diff # .env + REDIS_URL=redis://localhost:6379 ``` ```diff // src/config/configuration.ts export default () => ({ port: parseInt(process.env.PORT || '3000', 10), jwt: { ... }, + redisUrl: process.env.REDIS_URL!, }); ``` ```diff // src/config/env.validation.ts export const envValidation = Joi.object({ NODE_ENV: Joi.string().valid('dev', 'prod', 'test').default('dev'), PORT: Joi.number().default(3000), JWT_SECRET: Joi.string().required(), JWT_EXPIRES_IN: Joi.string().default('7d'), + REDIS_URL: Joi.string().uri().required(), }); ``` ### 常见问题 1. 问题:修改 `.env` 文件后,后服务没生效。 解决:重启 `npm run start:dev` (仅热重载 `ts` 文件,不会重载 `.env` 文件) 2. 问题:校验失败,无法启动服务。 解决:控制台会打印出 `Joi` 的错误信息,检查缺省值或类型。 3. 问题:敏感信息泄漏。 解决:绝对不要把 `.env` 提交到 Git,并在 CI/CD 中用环境变量注入。