133 lines
2.2 KiB
Markdown
133 lines
2.2 KiB
Markdown
# 常见问题
|
|
|
|
## MongoDB 相关
|
|
|
|
### 1. MongoDB 连接失败
|
|
|
|
**错误信息:**
|
|
```
|
|
connect ECONNREFUSED ::1:27017
|
|
connect ECONNREFUSED 127.0.0.1:27017
|
|
```
|
|
|
|
**原因:** MongoDB 未安装或未启动
|
|
|
|
**解决方案:**
|
|
1. 安装 MongoDB (推荐使用 Docker)
|
|
2. 启动 MongoDB
|
|
3. 重新启动后端服务
|
|
|
|
### 2. 端口被占用
|
|
|
|
**错误信息:**
|
|
```
|
|
EADDRINUSE: address already in use :::27017
|
|
```
|
|
|
|
**解决方案:**
|
|
1. 修改 .env 文件中的 MONGODB_URI
|
|
2. 或停止占用端口的服务
|
|
|
|
### 3. Docker 安装失败
|
|
|
|
**可能原因:**
|
|
- Docker Desktop 未启动
|
|
- 端口冲突
|
|
- 权限不足
|
|
|
|
**解决方案:**
|
|
1. 确保 Docker Desktop 正在运行
|
|
2. 检查端口是否被占用
|
|
3. 以管理员身份运行命令
|
|
|
|
## 后端服务相关
|
|
|
|
### 1. 端口被占用
|
|
|
|
**错误信息:**
|
|
```
|
|
Error: listen EADDRINUSE: address already in use :::3000
|
|
```
|
|
|
|
**解决方案:**
|
|
1. 修改 .env 文件中的 PORT
|
|
2. 或停止占用 3000 端口的服务
|
|
|
|
### 2. nodemon 未找到
|
|
|
|
**错误信息:**
|
|
```
|
|
'nodemon' is not recognized as an internal or external command
|
|
```
|
|
|
|
**解决方案:**
|
|
```bash
|
|
npm install nodemon --save-dev
|
|
```
|
|
|
|
### 3. 依赖安装失败
|
|
|
|
**解决方案:**
|
|
1. 清除 npm 缓存: `npm cache clean --force`
|
|
2. 删除 node_modules 文件夹
|
|
3. 重新安装: `npm install`
|
|
|
|
## API 相关
|
|
|
|
### 1. API 返回错误
|
|
|
|
**检查步骤:**
|
|
1. 确保 MongoDB 正在运行
|
|
2. 检查 API URL 是否正确
|
|
3. 查看后端日志
|
|
|
|
### 2. 跨域问题
|
|
|
|
**解决方案:**
|
|
- 已配置 CORS 中间件
|
|
- 确保前端正确配置代理
|
|
|
|
## 开发相关
|
|
|
|
### 1. 如何添加新功能
|
|
|
|
**步骤:**
|
|
1. 设计数据模型
|
|
2. 创建模型文件
|
|
3. 创建路由文件
|
|
4. 更新 API 文档
|
|
5. 测试接口
|
|
|
|
### 2. 如何修改现有功能
|
|
|
|
**步骤:**
|
|
1. 修改模型文件
|
|
2. 修改路由文件
|
|
3. 更新 API 文档
|
|
4. 测试接口
|
|
|
|
## 部署相关
|
|
|
|
### 1. 生产环境配置
|
|
|
|
**注意事项:**
|
|
1. 修改 .env 文件
|
|
2. 配置 MongoDB 远程连接
|
|
3. 配置 CORS 白名单
|
|
4. 启用 HTTPS
|
|
|
|
### 2. 性能优化
|
|
|
|
**建议:**
|
|
1. 使用 Redis 缓存
|
|
2. 优化数据库查询
|
|
3. 启用 gzip 压缩
|
|
4. 使用 CDN
|
|
|
|
## 联系方式
|
|
|
|
如果遇到其他问题,请查看:
|
|
- `docs/MongoDB安装指南.md` - 数据库安装
|
|
- `docs/快速开始.md` - 快速上手
|
|
- `docs/API.md` - 接口文档
|