项目作者: qingeekk

项目描述 :
RESTful API Server of gin 🐿
高级语言: Go
项目地址: git://github.com/qingeekk/longo.git
创建时间: 2018-07-07T20:07:21Z
项目社区:https://github.com/qingeekk/longo

开源协议:

下载


longo

使用 Golang 语言 Gin 框架搭建的开箱即用 RESTful 基础 CRUD 模板 (The RESTful API server of gin)

目录结构 (Directory Structure)

  1. ├── admin.sh # 进程的start|stop|status|restart控制文件
  2. ├── conf # 配置文件统一存放目录
  3. ├── config.yaml # 配置文件
  4. ├── server.crt # TLS配置文件
  5. └── server.key
  6. ├── config # 专门用来处理配置和配置文件的Go package
  7. └── config.go
  8. ├── db.sql # 在部署新环境时,可以登录MySQL客户端,执行source db.sql创建数据库和表
  9. ├── docs # swagger文档,执行 swag init 生成的
  10. ├── docs.go
  11. └── swagger
  12. ├── swagger.json
  13. └── swagger.yaml
  14. ├── handler # 类似MVC架构中的C,用来读取输入,并将处理流程转发给实际的处理函数,最后返回结果
  15. ├── handler.go
  16. ├── sd # 健康检查handler
  17. └── check.go
  18. └── user # 核心:用户业务逻辑handler
  19. ├── create.go # 新增用户
  20. ├── delete.go # 删除用户
  21. ├── get.go # 获取指定的用户信息
  22. ├── list.go # 查询用户列表
  23. ├── login.go # 用户登录
  24. ├── update.go # 更新用户
  25. └── user.go # 存放用户handler公用的函数、结构体等
  26. ├── main.go # Go程序唯一入口
  27. ├── Makefile # Makefile文件,一般大型软件系统都是采用make来作为编译工具
  28. ├── model # 数据库相关的操作统一放在这里,包括数据库初始化和对表的增删改查
  29. ├── init.go # 初始化和连接数据库
  30. ├── model.go # 存放一些公用的go struct
  31. └── user.go # 用户相关的数据库CURD操作
  32. ├── pkg # 引用的包
  33. ├── auth # 认证包
  34. └── auth.go
  35. ├── constvar # 常量统一存放位置
  36. └── constvar.go
  37. ├── errno # 错误码存放位置
  38. ├── code.go
  39. └── errno.go
  40. ├── token
  41. └── token.go
  42. └── version # 版本包
  43. ├── base.go
  44. ├── doc.go
  45. └── version.go
  46. ├── README.md # API目录README
  47. ├── router # 路由相关处理
  48. ├── middleware # API服务器用的是Gin Web框架,Gin中间件存放位置
  49. ├── auth.go
  50. ├── header.go
  51. ├── logging.go
  52. └── requestid.go
  53. └── router.go
  54. ├── service # 实际业务处理函数存放位置
  55. └── service.go
  56. ├── util # 工具类函数存放目录
  57. ├── util.go
  58. └── util_test.go
  59. └── vendor # vendor目录用来管理依赖包
  60. ├── github.com
  61. ├── golang.org
  62. ├── gopkg.in
  63. └── vendor.json

包含如下第三方包 (3rd Part Packages):

  1. gin-gonic/gin
  2. dgrijalva/jwt-go
  3. go-sql-driver/mysql
  4. StackExchange/wmi
  5. gin-contrib/sse
  6. go-ole/go-ole
  7. go-playground/locales
  8. go-playground/universal-translator
  9. golang/protobuf
  10. jinzhu/gorm
  11. jinzhu/inflection
  12. lexkong/log
  13. mattn/go-isatty
  14. satori/go.uuid
  15. shirou/gopsutil
  16. spf13/pflag
  17. spf13/viper
  18. teris-io/shortid
  19. ugorji/go
  20. willf/pad
  21. gopkg.in/check.v1
  22. gopkg.in/go-playground/validator.v9
  23. gopkg.in/yaml.v2