grf-gin是一个基于go语言gin框架的web案例,专注于前后端分离的业务场景。目的是为初学者提供一个清晰的web项目主线逻辑,对基础功能实现封装。
主要使用的技术栈:
- web框架: gin
- 命令行: cobra
- 配置管理: viper
- 日志库: zap
- 依赖注入: wire
- orm库: gorm
- redis库: go-redis
- jwt库: golang-jwt
- 文档: swag
- 其它: 阿里OSS,STS
环境依赖: mysql > 8.0, redis > 6.0。
快速部署项目:
# 获取项目
git clone https://github.com/mjiee/grf-gin.git
# 编译项目
go build
# 修改配置文件
vi ./conf/default.yaml
# 初始化项目
./grf-gin check -c ./conf/default.yaml
./grf-gin init -c ./conf/default.yaml
# 运行项目
./grf-gin run -c ./conf/default.yaml
其他服务:
# swagger文档生成
swag init --parseDependency --output ./app/docs
go build -tags "dev"
# api访问地址: /api/v1/swagger/index.html
# 依赖代码生成
wire
自定义错误码:
10001 # 参数验证相关错误
20001 # token认证相关错误
30001 # 业务逻辑相关错误