项目简介
go-gin-api 是一个基于 Gin 进行模块化设计的 API 框架。它封装了常用功能,使用简单,可实现快速业务研发。该框架增加了更多限制,能规范项目组开发成员的编码,避免混乱无序和随意的编码方式。不过,此项目主要供参考学习,线上使用需谨慎。
项目的主要特性和功能
- 限流与异常处理:支持
rate接口限流,panic异常时邮件通知。 - 跨域与指标记录:支持
cors接口跨域,Prometheus指标记录。 - 文档与查询语言:支持
Swagger接口文档生成,GraphQL查询语言。 - 追踪与性能剖析:支持项目内部链路追踪和
pprof性能剖析。 - 错误码与日志:支持
errno统一定义错误码,zap日志收集。 - 配置与数据库:支持
viper配置文件解析,gorm数据库组件和go-redis组件。 - 规范与代码生成:支持 RESTful API 返回值规范,具备代码生成器。
- 定时任务与实时通讯:支持
cron定时任务,可在后台界面配置;支持websocket实时通讯,有后台界面演示。 - Web 界面:使用
Light Year Admin模板提供 Web 界面。
安装使用步骤
MySQL 初始化
mysql
create database go_gin_api;
create user 'root'@'127.0.0.1' identified by '123456';
grant create,select,insert,update,delete on go_gin_api.* to 'root'@'127.0.0.1';
生成 graphql 代码
shell
go mod tidy
错误处理
shell
vi gqlgen.yml
修改 gqlgen.yml 文件如下:
```text
...
autobind:
...
然后重新运行:go
```
文档参考
- 中文文档:go-gin-api - 语雀
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】