feat: integrate swagger documentation and gin cors middleware

This commit is contained in:
2026-02-12 19:13:58 +08:00
parent aed996f409
commit d51e2dc500
13 changed files with 3378 additions and 131 deletions

View File

@@ -12,6 +12,8 @@
- **认证**: JWT (JSON Web Token) - golang-jwt/jwt/v5
- **密码加密**: bcrypt (golang.org/x/crypto)
- **二维码生成**: yeqown/go-qrcode/v2
- **API 文档**: Swagger/OpenAPI (swaggo/swag)
- **CORS**: gin-contrib/cors (跨域资源共享)
- **配置管理**:
- Viper (环境变量和配置文件)
- gotenv (.env 文件加载)
@@ -188,6 +190,35 @@ curl -X POST http://localhost:3000/api/auth/login \
## API 文档
项目使用 Swagger 生成交互式 API 文档。
启动服务器后,访问以下地址查看完整的 API 文档:
```
http://localhost:3000/swagger/index.html
```
### Swagger 文档功能
- **交互式测试**: 直接在浏览器中测试 API 端点
- **请求/响应示例**: 查看每个接口的请求参数和响应格式
- **认证支持**: 支持 Bearer Token 认证,可以输入 JWT 令牌进行测试
- **按分组浏览**: API 按功能模块分组(认证、序列号管理、企业管理等)
### 重新生成 Swagger 文档
如果修改了代码中的 API 注解,需要重新生成 Swagger 文档:
```bash
# 确保已安装 swag 工具
go install github.com/swaggo/swag/cmd/swag@latest
# 生成文档
swag init -g main.go
# 文档将生成在 docs/ 目录下
```
### 认证路由
| 方法 | 路径 | 描述 | 需要认证 |